基本开发环境

・ Python 3.6

・ Pycharm

需要导入的库

目标网页分析

网站是静态网站,没有加密,可以直接爬取

整体思路:

1、先在列表页面获取每张壁纸的详情页地址

2、在壁纸详情页面获取壁纸真实高清url地址

3、保存地址

代码实现

模拟浏览器请请求网页,获取网页数据

这里只选择爬取前10页的数据

代码如下

import threading

import parsel

import requests

def get_html(html_url):

"""

获取网页源代码

:param html_url: 网页url

:return:

"""

response = requests.get(url=html_url, headers=headers)

return response

def get_par(html_data):

"""

把 response.text 转换成 selector 对象 解析提取数据

:param html_data: response.text

:return: selector 对象

"""

selector = parsel.Selector(html_data)

return selector

def download(img_url, title):

"""

保存数据

:param img_url: 图片地址

:param title: 图片标题

:return:

"""

content = get_html(img_url).content

path = "壁纸\" + title + ".jpg"

with open(path, mode="wb") as f:

f.write(content)

print("正在保存", title)

def main(url):

"""

主函数

:param url: 列表页面 url

:return:

"""

html_data = get_html(url).text

selector = get_par(html_data)

lis = selector.css(".wb_listbox div dl dd a::attr(href)").getall()

for li in lis:

img_data = get_html(li).text

img_selector = get_par(img_data)

img_url = img_selector.css(".wb_showpic_main img::attr(src)").get()

title = img_selector.css(".wb_pictitle::text").get().strip()

download(img_url, title)

end_time = time.time() - s_time

print(end_time)

if __name__ == "__main__":

for page in range(1, 11):

url = "http://www.deskbizhi.com/min/list-{}.html".format(page)

main_thread = threading.Thread(target=main, args=(url,))

main_thread.start()

以上就是python 多线程爬取壁纸网站的示例的详细内容,更多关于python 爬取壁纸网站的资料请关注云海天教程其它相关文章!

python壁纸数据抓取_python 多线程爬取壁纸网站的示例相关推荐

  1. python 实时数据推送_python scrapy 爬取金十数据并自动推送到微信

    一.背景 因业务需要获取风险经济事件并采取应对措施,但因为种种原因又疏忽于每天去查看财经日历,于是通过爬取金十数据网站并自动推送到微信查看. 二.目标实现 image 三.环境与工具 1.pychar ...

  2. python多线程爬取多个网页_python多线程爬取网页

    #-*- encoding:utf8 -*- ''' Created on 2018年12月25日 @author: Administrator ''' from multiprocessing.du ...

  3. python 爬取_Python爬虫爬取马蜂窝北京景点信息

    背景 来北京有些日子了,但是每个周末都窝在六环外的村里躺着.想想不能再这么浪费时间了,得出去玩!但是去哪玩呢?于是乎想着,先把北京的景点以及位置都保存起来,然后在分析分析做个出行计划.从哪里获取景点信 ...

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

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

  5. Python爬虫攻略(2)Selenium+多线程爬取链家网二手房信息

    申明:本文对爬取的数据仅做学习使用,请勿使用爬取的数据做任何商业活动,侵删 前戏 安装Selenium: pip install selenium 如果下载速度较慢, 推荐使用国内源: pip ins ...

  6. python爬虫教材推荐 豆瓣_Python爬虫爬取豆瓣书籍数据

    炎热的夏天,酷暑难挡,难免会心烦意燥,睡前随手拿起枕边看过很多遍的「平凡的世界」.看书,会让躁动的心瞬间安静下来. 生活不能等待别人来安排,要自己去争取和奋斗:而不论其结果是喜是悲,但可以慰藉的是,你 ...

  7. python实现登录抓取_Python实现爬取需要登录的网站完整示例

    本文实例讲述了Python爬取需要登录的网站实现方法.分享给大家供大家参考,具体如下: import requests from lxml import html # 创建 session 对象.这个 ...

  8. python 爬虫 博客园_Python爬虫爬取博客园作业

    分析一下他们的代码,我在浏览器中对应位置右键,然后点击检查元素,可以找到对应部分的代码.但是,直接查看当前网页的源码发现,里面并没有对应的代码.我猜测这里是根据服务器上的数据动态生成的这部分代码,所以 ...

  9. python爬虫知乎点赞_Python爬虫爬取知乎小结

    最近学习了一点网络爬虫,并实现了使用Python来爬取知乎的一些功能,这里做一个小的总结.网络爬虫是指通过一定的规则自动的从网上抓取一些信息的程序或脚本.我们知道机器学习和数据挖掘等都是从大量的数据出 ...

最新文章

  1. TCP/IP协议的一个具体实现Socket
  2. CPU100%不限性能和100%独享资源的区别
  3. mysql 5.1.73路径_centos7.2 环境下 mysql-5.1.73 安装配置
  4. 在Web中实现C/S模式的Tab
  5. 在“后台反复读取用户相册”?微信回应:最新版本将取消
  6. 开源工具 PrivateBin 修复XSS 漏洞
  7. SOA项目失败十大原因及完善建议(转)
  8. 6.3 二进制文件操作案例精选
  9. 如何在SQLite中检查表是否存在?
  10. Chapter 04-Using Conversion Functions and Conditional Expressions-Conditional Expressions
  11. oracle job 与存储过程,讲解Oracle中JOB与存储过程的接合用法
  12. 【转载】linux tail命令的使用方法详解
  13. 拓端tecdat|R语言用相关网络图可视化分析汽车配置和饮酒习惯
  14. CPDA认证|数据分析师如何撰写数据报告?
  15. 生物信息学:根据PDB名称、爬虫PDB数据库的信息、保存到Excel里
  16. 面向对象:让我们红尘作伴,吃的白白胖胖
  17. 音视频开发---音视频同步算法
  18. 六Elasticsearch之中文分词器插件es-ik的热更新词库
  19. MFC--学生管理系统
  20. 机房动力环境监控系统

热门文章

  1. 使用Jupyter Notebook+bokeh绘图入门完整步骤
  2. 数据结构 红黑树(RBTree)的原理与实现
  3. 7.22 C++自学笔记
  4. gpg 中标麒麟获取 密钥失败_PHP实现码云Gitee的WebHook密钥验证算法
  5. 计算机网络考试成绩分析报告,成绩分析报告范文_成绩分析总结与反思
  6. java 散列集_java数据结构之散列集HashSet与散列表Hashtable
  7. netstat php,netstat查看网络端口情况
  8. kendoui固定宽度_KendoUi 学习笔记(二) Grid
  9. 证券投资深度学习_安信证券:“深度学习”开启新一轮计算模式变革
  10. java配置环境变量为8后仍然显示为7_jdk7与jdk8环境共存与切换