Xpath--使用Xpath爬取糗事百科成人版图片
2024-10-19 11:49:31
#!usr/bin/env python
#-*- coding:utf-8 _*-
"""
@author:Hurrican
@file: 爬取糗事百科.py
@time: 2018/11/29 20:43 """
'''
content返回的是byte型数据,而text返回的是Unicode数据,也就是说text对原始数据进行的特殊的编码,而这个编码方式是基于对原始数据的猜测(响应头),
text一般用于返回的文本 content的一般用于对返回的其他数据类型
但是对于某些网站的中文用text可能会导致返回乱码,所以最好是使用content然后自己进行重新编码。
'''
#这里我只爬取了10页。因为节约电脑空间,哈哈
import requests
from lxml import etree
url_list = ["http://www.qiumeimei.com/page/{}".format(str(i)) for i in range(1,11)]
for url in url_list:
r = requests.get(url)
ret = r.content.decode() #转化字符
result = etree.HTML(ret)
img_list = result.xpath('//div[@class="home_main_wrap"]/div[@class="panel clearfix"]/div[@class="main clearfix"]/p/img/@data-lazy-src') #// 代表首元素 一定要双斜杠
print(img_list)
for img in img_list:
with open('C:\\Users\\Hurrican\\PycharmProjects\\01\\img\\%s'%img[-10:],'wb') as f:
try:
r = requests.get(img)
f.write(r.content)
print("正在下载%s"%img)
except Exception as e:
print(e) print("下载完成")
最新文章
- mysql 导出select语句结果到excel文件等
- Linux 下编译自己的 OpenJDK7 包括JVM和JDK API
- operation not possible due to RF-kill
- Silverlight通过Wcf Data Service访问数据库之ADO.NET Entity Framework篇
- 输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数
- ThinkPHP函数详解:A方法
- Java增强的泛型
- python数据的存储和持久化操作
- 树上第k小,可持久化线段树+倍增lca
- 线程的实现方法以及区别 extends Thread、implements Runable
- JSON取值(key是中文或者数字)方式详解
- SpringCloud用户自定义配置信息的定义和查看
- Linux:Day13(下) GRUB
- (转)如何阅读OpenStack源码
- Ipython使用指南
- BurpSuiteProxy安装使用
- Cannot generate C# proxy dll with JNI4NET tool, running batch file as trusted assembly?
- jquery zTree异步搜索的例子--搜全部节点
- 1.App爬取相关库的安装(安装Charles及手机端证书安装配置)
- 彻底弄懂tf.Variable、tf.get_variable、tf.variable_scope以及tf.name_scope异同
热门文章
- 【例题 4-5 uva 512】Spreadsheet Tracking
- How many integers can you find
- (33)Spring Boot 监控和管理生产环境【从零开始学Spring Boot】
- Spring MVC-表单(Form)处理示例(转载实践)
- 基于I/O的Server/Client实现
- Thread interrupt表示什么
- Heat-AutoScaling
- Java类的多态机制
- 安卓实现序列化之Parcelable接口
- 【待解决】maven创建web报Cannot read lifecycle mapping metadata for artifact org.apache.maven.plugins