使用多线程技术 爬取高清图片

该博客主要介绍了一段Python爬虫代码,利用正则表达式、requests和多线程模块进行网页抓取。当网络状态正常,返回200响应时,程序会启动并等待用户输入开始。代码涉及编码转换,从ISO-8859-1转为GBK,以正确解析HTML内容。通过正则匹配获取URL和图片名,并采用多线程下载图片,确保高效执行。程序中还包含对网络异常的处理,当网络不正常时,程序会提示并关闭。
摘要由CSDN通过智能技术生成

软件使用到以下模块:

import re #正则表达式
import requests #网页爬虫
import os #文件系统
import random #随机
import threading #多线程
import time #时间

部分源代码透露

if str(total) == "<Response [200]>":
    print("网络正常:",total,"\n——————————————————————")
    input("输入回车开始:")
else:
    print("\033[31m网络异常:\033[0m",total,"\n——————————————————————")
    input("输入回车\033[31m关闭\033[0m:")
    os._exit()

》》》》》》》》》》》》》》》》》》》》

    for thread in threads:
        time.sleep(time1)
        thread.start() #多线程启动

》》》》》》》》》》》》》》》》》》》》

page(urlsum[munber])#第一页爬取
for it in list(range(int(uu))):#第n页爬取
    page(urlsum[munber]+index%it)

 重要的代码:

编码转换

html = total.text.encode('ISO-8859-1').decode("gbk")#编码转换

 URL和图片名提取

uu = re.search("<span class=\".*?\">…</span><a href=\".*?\">(?P<ee>\d+)</a>",html)

多线程

for i, u in urlname:  # i=url u=name
    threads.append(threading.Thread(target=image,args=(i,u,)))#多线程创建
for thread in threads:
    time.sleep(time1)
    thread.start() #多线程启动
for thread in threads:
    thread.join() #多线程等待关闭

效果如下


 下载地址(附带单线程),免费下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值