鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 1589895304

[技术交流] 新手爬虫——爬妹子

[复制链接]
发表于 2021-4-15 09:44:49 | 显示全部楼层
赞,棒,LSP
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-15 10:24:01 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-4-15 17:02:48 | 显示全部楼层
爬虫学的好,牢饭吃到饱

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-15 17:04:05 | 显示全部楼层
文件损坏了啊

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-16 17:06:44 | 显示全部楼层
文件损坏,下载不了!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-17 12:31:11 | 显示全部楼层
学习中!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-17 13:47:53 | 显示全部楼层
压缩包打不开。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-17 15:47:47 | 显示全部楼层
  1. import requests
  2. #from lxml import etree  python3.5以上版本不可这样导入
  3. from lxml import html
  4. etree = html.etree
  5. import os
  6. import time

  7. def geturl(url):
  8.     headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.72 Safari/537.36"}
  9.     #params = {"show_raw":1}
  10.     #response = requests.get(url,params=params,headers = headers)
  11.     response = requests.get(url,headers = headers)
  12.     response.encoding = 'gbk'
  13.     html = response.text
  14.     return html

  15. def get_mggs(url):
  16.     mggs = []
  17.     html = geturl(url)
  18.     html = etree.HTML(html)
  19.     items = html.xpath('//ul[@class="list_con_box_ul"]/li')

  20.     for li in items:
  21.         href = li.xpath("./a/@href")[0]
  22.         title = li.xpath("./a/@title")[0]
  23.         mgg = [title,href]
  24.         mggs.append(mgg)

  25.     return mggs

  26. def getmgg():
  27.     mggs = get_mggs(url)
  28.     for mgg in mggs:
  29.         count = 1
  30.         mggurl1 = url.split("/meinv")[0] + mgg[1]
  31.         if not os.path.exists(mgg[0]):
  32.             dil = dils(mgg[0])

  33.         else:
  34.             os.chdir(mgg[0])

  35.         for i in range(15):
  36.             mggurl = mggurl1
  37.             if count == 1:
  38.                 mggurl = mggurl1

  39.             else:
  40.                 mggurl = mggurl1.split(".html")[0] + "_" + str(count) + ".html"

  41.             count += 1

  42.             headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.72 Safari/537.36"}
  43.             resp = requests.get(url=mggurl,headers=headers)
  44.             links = []
  45.             if resp.status_code ==200:
  46.                 html = resp.text
  47.                 html = etree.HTML(html)
  48.                 link = html.xpath('//div[@id="bigpic"]/a[2]/img/@src')[0]
  49.                 mm_jpg = requests.get(link,headers=headers)

  50.                 with open(link.split("/")[-1],'wb')as f:
  51.                     f.write(mm_jpg.content)
  52.                     print("成功下载一张图片")
  53.                     time.sleep(1)
  54.         os.chdir(".\\..")

  55.         #print("成功下载一套图片")


  56. def dils(name = "ooxx"):
  57.     os.mkdir(name)
  58.     os.chdir(name)


  59. if __name__ == "__main__":
  60.    
  61.     url1 = "https://www.tupianzj.com/meinv/"
  62.     lis = {"清纯美女":"xiezhen/","性感":"xinggan/",
  63.            "古装":"guzhuang/","人体艺术":"yishu/",
  64.            "香车美女":"chemo/","丝袜美女":"siwa/"
  65.         }
  66.     name = input("选择要下载的图片分类(清纯美女,性感,古装,人体艺术,香车美女,丝袜美女)")
  67.     url = url1 + lis[name]

  68.     geturl(url)
  69.     mggs_url = get_mggs(url)
  70.     maggs = getmgg()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-17 15:48:38 | 显示全部楼层
import requests
#from lxml import etree  python3.5以上版本不可这样导入
from lxml import html
etree = html.etree
import os
import time

def geturl(url):
    headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.72 Safari/537.36"}
    #params = {"show_raw":1}
    #response = requests.get(url,params=params,headers = headers)
    response = requests.get(url,headers = headers)
    response.encoding = 'gbk'
    html = response.text
    return html

def get_mggs(url):
    mggs = []
    html = geturl(url)
    html = etree.HTML(html)
    items = html.xpath('//ul[@class="list_con_box_ul"]/li')

    for li in items:
        href = li.xpath("./a/@href")[0]
        title = li.xpath("./a/@title")[0]
        mgg = [title,href]
        mggs.append(mgg)

    return mggs

def getmgg():
    mggs = get_mggs(url)
    for mgg in mggs:
        count = 1
        mggurl1 = url.split("/meinv")[0] + mgg[1]
        if not os.path.exists(mgg[0]):
            dil = dils(mgg[0])

        else:
            os.chdir(mgg[0])

        for i in range(15):
            mggurl = mggurl1
            if count == 1:
                mggurl = mggurl1

            else:
                mggurl = mggurl1.split(".html")[0] + "_" + str(count) + ".html"

            count += 1

            headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.72 Safari/537.36"}
            resp = requests.get(url=mggurl,headers=headers)
            links = []
            if resp.status_code ==200:
                html = resp.text
                html = etree.HTML(html)
                link = html.xpath('//div[@id="bigpic"]/a[2]/img/@src')[0]
                mm_jpg = requests.get(link,headers=headers)

                with open(link.split("/")[-1],'wb')as f:
                    f.write(mm_jpg.content)
                    print("成功下载一张图片")
                    time.sleep(1)
        os.chdir(".\\..")

        #print("成功下载一套图片")


def dils(name = "ooxx"):
    os.mkdir(name)
    os.chdir(name)


if __name__ == "__main__":
   
    url1 = "https://www.tupianzj.com/meinv/"
    lis = {"清纯美女":"xiezhen/","性感":"xinggan/",
           "古装":"guzhuang/","人体艺术":"yishu/",
           "香车美女":"chemo/","丝袜美女":"siwa/"
        }
    name = input("选择要下载的图片分类(清纯美女,性感,古装,人体艺术,香车美女,丝袜美女)")
    url = url1 + lis[name]

    geturl(url)
    mggs_url = get_mggs(url)
    maggs = getmgg()
[code][/code]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-20 11:39:33 From FishC Mobile | 显示全部楼层
我刚开始学Python你就给我看这个?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-24 10:49:28 | 显示全部楼层

直接改后缀名就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-29 14:13:12 | 显示全部楼层
文件损坏 无法解压
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 23:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表