鱼C论坛

 找回密码
 立即注册
查看: 2246|回复: 0

[技术交流] py课的作业爬妹子图有借鉴的可以下面回复

[复制链接]
发表于 2021-5-3 21:11:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import urllib.request

picsite = []

url = "http://jandan.net/girl/"
i = int(input("输入要爬行的页数:"))

def openurl(url):
    req = urllib.request.Request(url)
    req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36')
    response = urllib.request.urlopen(req)
    html = response.read().decode('utf-8')
    return html

#找图片地址
def find_picture(url):
    a = b =0
    html = openurl(url)
   
    while not(a == 8):
        a = html.find("img src=", b) + 9
        b = html.find('"', a)
        if a != 8:
            picsite.append("http:" + html[a:b])
   
#找下一页的地址
def openurl_next(url):
    html = openurl(url)

    a = html.find("Older Comments") + 22
    b = html.find('"', a)

    url = "http:" + html[a:b]
    return url

#下载图片
def down_picture():
    for i in range(len(picsite)):
        url = picsite[i]
        downpicture = urllib.request.urlopen(url)
        apt = downpicture.read()

        with open(str(i) + '.jpg', "wb") as f:
            f.write(apt)

#开始运行程序
def start(i):
    aurl = url
    while i:
        find_picture(aurl)
        next_url = openurl_next(aurl)
        aurl = next_url
        i -= 1
    down_picture()

if __name__ == "__main__":
    start(i)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-16 01:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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