import requests
from lxml import etree
import osdef download_img(img_url_referer_url):# print("fuck, 你还来不来")(img_url, referer) = img_url_referer_urlprint('Downloading ......' + img_url)headers = {#'Cookie': 'Hm_lvt_dbc355aef238b6c32b43eacbbf161c3c = 1534726766;Hm_lpvt_dbc355aef238b6c32b43eacbbf161c3c = 1534727069','referer': referer,'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',}# print(headers)if os.path.exists('download'):passelse:os.mkdir('download')filename = 'download/'+ img_url.split('/')[-1]#request.urlretrieve(img_url, filename)response = requests.get(img_url, headers = headers)with open(filename, 'wb') as f:f.write(response.content)def parse_detailed_page(url_href, queue):#for i in range(1, )response = requests.get(url_href)html_ele = etree.HTML(response.text)max_page = html_ele.xpath('//div[@class="pagenavi"]/a/span/text()')[-2]# print(max_page)for i in range(1, int(max_page)+1):page_url = url_href + '/' + str(i)response  = requests.get(page_url)html_ele = etree.HTML(response.text)img_url = html_ele.xpath('//div[@class="main-image"]/p/a/img/@src')[0]# print(img_url)#download_img(img_url, url_href)queue.put((img_url, url_href))def get_all_image_url(queue):url = 'http://www.mzitu.com/'response = requests.get(url)# with open('mzitu.html', 'wb') as f:#     f.write(response.content)html_ele = etree.HTML(response.text)href_list = html_ele.xpath('//ul[@id="pins"]/li/a/@href')for href in href_list:# print(href)parse_detailed_page(href, queue)if __name__ == '__main__':# 创建一线程或者进程import multiprocessingfrom multiprocessing import Queue, Pool# 以下三行主要是获取image的url, 放到我们的queue中q = Queue()p = multiprocessing.Process(target=get_all_image_url, args=(q, ))p.start()download_pool = Pool(5)for i in range(0, 1111):image_url_referer_url = q.get()print(image_url_referer_url)download_pool.apply_async(download_img, (image_url_referer_url,))download_pool.close()download_pool.join()# 程序最后退出前进行joinp.join()

爬取mzitu图 线程 进程相关推荐

  1. 使用单线程,多线程,协程,异步爬取包图网大国工匠视频

    使用单线程爬取,多线程,协程爬取,异步爬取包图网视频 文章目录 使用单线程爬取,多线程,协程爬取,异步爬取包图网视频 第一步使用单线程爬取包图网视频 多线程爬取视频 用协程爬取 基于协程的异步爬取 第 ...

  2. python多线程爬取斗图啦数据

    python多线程爬取斗图啦网的表情数据 使用到的技术点 requests请求库 re 正则表达式 pyquery解析库,python实现的jquery threading 线程 queue 队列 ' ...

  3. python爬虫爬妹子图_【爬虫】直接上干货-爬取妹子图整站图片

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #coding=utf-8 import os import requests from lxml import etree import time cl ...

  4. 多线程 爬取 趣图网

    原文链接: 多线程 爬取 趣图网 上一篇: 百度网盘获取私密分享的文件 下一篇: 欧几里得距离.曼哈顿距离和切比雪夫距离 # coding=utf-8import urllib import urll ...

  5. python爬取妹子图片1_【爬虫】直接上干货-爬取妹子图整站图片

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #coding=utf-8 import os import requests from lxml import etree import time cl ...

  6. python多线程爬取多个网址_【Python爬虫】多线程爬取斗图网站(皮皮虾,我们上车)...

    原标题:[Python爬虫]多线程爬取斗图网站(皮皮虾,我们上车) 斗图我不怕 没有斗图库的程序猿是无助,每次在群里斗图都以惨败而告终,为了能让自己在斗图界立于不败之地,特意去网上爬取了斗图包.在这里 ...

  7. Python爬虫系列(三)多线程爬取斗图网站(皮皮虾,我们上车)

    斗图我不怕 最近看了Python多线程的相关内容,并且前几天观看了腾讯课堂潭州学院上面的关于斗图网爬取的公开课,课程内容大致是利用Python多线程爬取斗图(多页),并将图片保存到本地.自己写这篇文章 ...

  8. 多线程爬取斗图表情包

    和朋友在QQ上聊天感觉呀没有激情,突然,突发奇想,我写个小的爬虫 ,把表情包爬取下来随便挑,斗到他们吐血. 下面是爬取斗图的代码,代码可供参考 #encoding:utf8#模块import reim ...

  9. 100行代码教你爬取斗图网(Python多线程队列)

    100行代码教你爬取斗图网(Python多线程队列) 前言 根据之前写的两篇文章,想必大家对多线程和队列有了一个初步的了解,今天这篇文章就来实战一下,用多线程 + 队列 爬取斗图网的全网图片. 你还在 ...

  10. Python网络爬虫8 - 爬取彼岸图网美图

    彼岸图网收集了大量美图,是个不错的爬取对象.话不多说,直接上图. 分析站点 分类列表 爬取之前,自然要分析一波,这个站点的框架比较简单,从分类着手,共包含12个分类项. 4K人物 4K动漫 4K动物 ...

最新文章

  1. Jvm常见面试题及答案汇总1000道(春招+秋招+社招)
  2. Spring Boot入门(11)实现文件下载功能
  3. vs2010 Qt插件报错Couldn't register all Qt4VSAddin command解决方案
  4. inotify监听文件夹的变动
  5. ABAP 的历史,现在,和未来的讨论
  6. 设计模式:里氏替换原则
  7. RedisTemplate常用集合使用说明-opsForValue(二)
  8. 撸完这些JVM知识点,明天就去面试阿里P6+
  9. [ES6] 细化ES6之 -- 对象的扩展
  10. idea调试代码步入用法
  11. 算法21----重塑矩阵 LeetCode566
  12. hp mfp scan点配置没有反应_HP LaserJet Pro MFP M125-M126,扫描文件HPScan不能用?
  13. 张宇:概率论与数理统计公式总结
  14. SEAL开源库源码02
  15. python富翁与穷人_穷人和富人最根本的区别
  16. 弱网工具-NEWT应用
  17. Android 12系统源码_SystemUI(八)SystemUIVisibility属性
  18. 非线性规划转化为线性规划问题(司守奎老师数模例题)-------数模学习笔记一
  19. DBA_SEGMENTS
  20. 英伟达(NVIDIA)显卡、驱动版本与cuda版本对应关系

热门文章

  1. fedora14 官方下载地址
  2. 计算机多媒体课件制作,多媒体课件制作软件
  3. 【搬运】不思议的小故事,其实舰娘们也是有灵性的
  4. 适合小白使用的python编辑器_5个适合小白的Python开发必备工具(推荐)
  5. 黑客是怎么攻击网站的(网站渗透入侵全部教程)
  6. 网站做渗透测试服务的步骤
  7. Java 的三种 Base64
  8. 一文掌握有序logistic回归分析
  9. 换服务器系统怎么迁移,更换服务器时,数据迁移的方法
  10. 解决Nvivo自动编码问题,nvivo自动编码语言包