python 爬虫 多任务方式 协程 爬取虎牙美女小姐姐

准备工作

  • 先进入虎牙直播分类颜秀把网页源码保存在meinv.html的文件中,放在pycharm 项目当前路径下。
  • 然后把爬取后的文件保存在pycharm项目当前目录下的picture文件夹下(文件夹提前生成)

多任务思路:

  • 先创建卵,把卵创建完后放入列表a中
  • 再运用gevent.joinall(a)采用多任务方式下载
import urllib.request
import gevent
import re
from gevent import monkey

monkey.patch_all()

#图片下载操作
def download(img_name,img_url):
    req=urllib.request.urlopen(img_url)
    img_content=req.read()
    with open("pictures/%s"%img_name,"wb") as f:
      f.write(img_content)

def main():
    #读取网页中的源码内容
    with open("meinv.html","r",encoding='utf-8') as f:
        url_content=f.read()
    #使用正则过滤出图片的网址
    img_li=re.findall(r"https://huya.*?\.jpg",url_content)
    print(len(img_li))
    i=0
    li = list()
    for j in img_li:
        a =li.append(gevent.spawn(download,str(i)+".jpg",j))
        i += 1
    gevent.joinall(a)

if __name__ == '__main__':
    main()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值