来个简单的多线程,爬取速度比单线程要快很多,下面上代码:

#encoding:utf-8
#多线程爬取import requests
import os
from bs4 import BeautifulSoup
import threading
import urllib.requestFIRST_PAGE_URL = 'http://www.qiubaichengren.com/{}.html'
PAGE_URL_LIST = []
IMG_URL_LIST = [] #所有的图片链接
NAME_LIST = []
gLock = threading.Lock()
for x in range(1,100):page_url = FIRST_PAGE_URL.format(x)PAGE_URL_LIST.append(page_url)def get_page():while True:gLock.acquire()if len(PAGE_URL_LIST) == 0:gLock.release()breakelse:page_url = PAGE_URL_LIST.pop()gLock.release()response = requests.get(page_url)content = response.contentsoup = BeautifulSoup(content, 'lxml')src = soup.find_all('div', class_='mala-text')imgs = soup.find_all('img')for img in src:url = img.find('img')link = url.get('src')title = url.get('alt')split_list = link.split('/')final = split_list.pop()t_split_list = final.split('.')suffix = t_split_list.pop()filename = title + '.' + suffix  # 名字加后缀gLock.acquire()NAME_LIST.append(filename)IMG_URL_LIST.append(link)gLock.release()#download_image(link, filename)def download_image():while True:gLock.acquire()if len(IMG_URL_LIST) == 0:gLock.release()continueelse:url = IMG_URL_LIST.pop()filename = NAME_LIST.pop()gLock.release()path = os.path.join('images', filename)urllib.request.urlretrieve(url, filename=path)def main():for x in range(4):th = threading.Thread(target=get_page)th.start()for x in range(5):th = threading.Thread(target=download_image)th.start()
if __name__ == "__main__":main()

python爬虫爬取糗百成人图片多线程版本相关推荐

  1. 使用Python爬虫爬取网络美女图片

    代码地址如下: http://www.demodashi.com/demo/13500.html 准备工作 安装python3.6 略 安装requests库(用于请求静态页面) pip instal ...

  2. 用python爬虫爬取网页壁纸图片(彼岸桌面网唯美图片)

    参考文章:https://www.cnblogs.com/franklv/p/6829387.html 今天想给我的电脑里面多加点壁纸,但是嫌弃一个个保存太慢,于是想着写个爬虫直接批量爬取,因为爬虫只 ...

  3. 利用Python爬虫爬取网页福利图片

    最近几天,学习了爬虫算法,通过参考书籍,写下自己简单爬虫项目: 爬取某福利网站的影片海报图片 环境:anaconda3.5+spyder3.2.6 目录 1.本节目标 2.准备工作 3.抓取分析 4. ...

  4. python唯美壁纸_用python爬虫爬取网页壁纸图片(彼岸桌面网唯美图片)

    参考文章:https://www..com/franklv/p/6829387.html 今天想给我的电脑里面多加点壁纸,但是嫌弃一个个保存太慢,于是想着写个爬虫直接批量爬取,因为爬虫只是很久之前学过 ...

  5. 用Python 爬虫爬取贴吧图片

    之前一直在看机器学习,遇到了一些需要爬取数据的内容,于是稍微看了看Python爬虫,在此适当做一个记录.我也没有深入研究爬虫,大部分均是参考了网上的资源. 先推荐两个Python爬虫的教程,网址分别是 ...

  6. python爬虫爬取网页壁纸图片(《底特律:变人》)

    参考文章:https://www.cnblogs.com/franklv/p/6829387.html 爬虫爬取网址:http://www.gamersky.com/news/201804/10396 ...

  7. python爬虫爬取知乎图片,轻松解决头像荒

    前言 最近逛知乎,发现了一个问题.         回答下很多好看的头像,因此我动了一个心思,想要制作一个小网页,可以随机返回一款好看的情头.心思既起,当然要开始付诸行动.但是想要制作如此一个网页,后 ...

  8. python爬虫 爬取小姐姐图片

    前言 大致熟悉了python的基础语法以后,开始学习爬虫基础. 一.爬取前的准备工作 python3.7环境(只要是python3版本都可以): 依赖包 : time requests re (缺少包 ...

  9. python爬虫爬取小姐姐图片(5762张)

    接触爬虫的第一天 第一步:现将python环境搭建好,工欲利其事必先利其器! 第二步:寻找目标网站,我选择的网站是http://www.win4000.com,里面有一个美女板块,里面有各种小姐姐的照 ...

  10. 用python爬虫爬取无水印图片_使用python 爬虫,爬取图片

    一.需求: 用python实现去内涵段子里面下载网页当中的图片到本地当中 二.实现: 1.获取要爬取的URL地址 2.设置headers 3.请求网页内容,把html内容转换成XML 4.解析地址内容 ...

最新文章

  1. 微软VSTS的新功能:WebTest要点
  2. [并发编程] - Executor框架#ThreadPoolExecutor源码解读01
  3. 如何成立一家私募基金公司
  4. 计划继续深化学习物联网系统的相关知识 目前的WiFi模块基于ESP8266
  5. 如何一站式解决“人财物事”管理难题?
  6. getch, getche, getchar 转
  7. vue小demo易错点总结
  8. 敏捷实践的价值观和方法论
  9. Python中的列表、元组的增、删、改、查
  10. 【ElasticSearch】Es 源码之 Discovery DiscoveryModule ZenDiscovery 源码解读
  11. python dataframe groupby_第1关:了解python数据表操作
  12. linux wegt克隆网站,linux利用wget命令备份网站(镜像拷贝)
  13. 关于管理者应该拥有的的六十…
  14. 小学计算机二课堂活动总结,康宁路学校“信息技术与课堂教学深度融合”活动总结...
  15. redis报错:ERR value is not an integer or out of range
  16. System State 转储分析案例一则
  17. Stduino IDE stm32 最小系统 小蓝板 驱动继电器(五)
  18. Chrome安装插件SwitchyOmega
  19. 盘古开源资讯:夯实产业基础,打造汽车电子芯片产业高地
  20. 【SCA-CNN 解读】空间与通道注意力:Spatial and Channel-wise Attention

热门文章

  1. win10 进不了修复服务器失败怎么办,win10自动修复失败开不了机怎么办?win10自动修复失败无限循环解决方法大全...
  2. word无法读取此文件,文档可能已损坏_可能的补救方法
  3. SLAM学习笔记(Code3)----Eigen库中的Geometry
  4. oracle 取农历函数,完善SQL农历转换函数
  5. 一文搞懂机器学习中的缺失值处理(超详细)
  6. 如何拟合幂率分布的幂率
  7. 工业锅炉计算机控制系统框图,计算机控制系统实例..doc
  8. php 0x80004005,错误类型:Provider (0x80004005)未指定的错误 的一个处理方法
  9. Python selenium 简单的实现大麦网自动购票过程
  10. C语言——俄罗斯方块小游戏