爬取mzitu图 线程 进程
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图 线程 进程相关推荐
- 使用单线程,多线程,协程,异步爬取包图网大国工匠视频
使用单线程爬取,多线程,协程爬取,异步爬取包图网视频 文章目录 使用单线程爬取,多线程,协程爬取,异步爬取包图网视频 第一步使用单线程爬取包图网视频 多线程爬取视频 用协程爬取 基于协程的异步爬取 第 ...
- python多线程爬取斗图啦数据
python多线程爬取斗图啦网的表情数据 使用到的技术点 requests请求库 re 正则表达式 pyquery解析库,python实现的jquery threading 线程 queue 队列 ' ...
- python爬虫爬妹子图_【爬虫】直接上干货-爬取妹子图整站图片
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #coding=utf-8 import os import requests from lxml import etree import time cl ...
- 多线程 爬取 趣图网
原文链接: 多线程 爬取 趣图网 上一篇: 百度网盘获取私密分享的文件 下一篇: 欧几里得距离.曼哈顿距离和切比雪夫距离 # coding=utf-8import urllib import urll ...
- python爬取妹子图片1_【爬虫】直接上干货-爬取妹子图整站图片
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #coding=utf-8 import os import requests from lxml import etree import time cl ...
- python多线程爬取多个网址_【Python爬虫】多线程爬取斗图网站(皮皮虾,我们上车)...
原标题:[Python爬虫]多线程爬取斗图网站(皮皮虾,我们上车) 斗图我不怕 没有斗图库的程序猿是无助,每次在群里斗图都以惨败而告终,为了能让自己在斗图界立于不败之地,特意去网上爬取了斗图包.在这里 ...
- Python爬虫系列(三)多线程爬取斗图网站(皮皮虾,我们上车)
斗图我不怕 最近看了Python多线程的相关内容,并且前几天观看了腾讯课堂潭州学院上面的关于斗图网爬取的公开课,课程内容大致是利用Python多线程爬取斗图(多页),并将图片保存到本地.自己写这篇文章 ...
- 多线程爬取斗图表情包
和朋友在QQ上聊天感觉呀没有激情,突然,突发奇想,我写个小的爬虫 ,把表情包爬取下来随便挑,斗到他们吐血. 下面是爬取斗图的代码,代码可供参考 #encoding:utf8#模块import reim ...
- 100行代码教你爬取斗图网(Python多线程队列)
100行代码教你爬取斗图网(Python多线程队列) 前言 根据之前写的两篇文章,想必大家对多线程和队列有了一个初步的了解,今天这篇文章就来实战一下,用多线程 + 队列 爬取斗图网的全网图片. 你还在 ...
- Python网络爬虫8 - 爬取彼岸图网美图
彼岸图网收集了大量美图,是个不错的爬取对象.话不多说,直接上图. 分析站点 分类列表 爬取之前,自然要分析一波,这个站点的框架比较简单,从分类着手,共包含12个分类项. 4K人物 4K动漫 4K动物 ...
最新文章
- Jvm常见面试题及答案汇总1000道(春招+秋招+社招)
- Spring Boot入门(11)实现文件下载功能
- vs2010 Qt插件报错Couldn't register all Qt4VSAddin command解决方案
- inotify监听文件夹的变动
- ABAP 的历史,现在,和未来的讨论
- 设计模式:里氏替换原则
- RedisTemplate常用集合使用说明-opsForValue(二)
- 撸完这些JVM知识点,明天就去面试阿里P6+
- [ES6] 细化ES6之 -- 对象的扩展
- idea调试代码步入用法
- 算法21----重塑矩阵 LeetCode566
- hp mfp scan点配置没有反应_HP LaserJet Pro MFP M125-M126,扫描文件HPScan不能用?
- 张宇:概率论与数理统计公式总结
- SEAL开源库源码02
- python富翁与穷人_穷人和富人最根本的区别
- 弱网工具-NEWT应用
- Android 12系统源码_SystemUI(八)SystemUIVisibility属性
- 非线性规划转化为线性规划问题(司守奎老师数模例题)-------数模学习笔记一
- DBA_SEGMENTS
- 英伟达(NVIDIA)显卡、驱动版本与cuda版本对应关系