写Python爬虫遇到的一些坑 转载:https://mp.weixin.qq.com/s/kfxJ7EKFeunGcjvBr0l7ww
2021/7/14 22:06:24
本文主要是介绍写Python爬虫遇到的一些坑 转载:https://mp.weixin.qq.com/s/kfxJ7EKFeunGcjvBr0l7ww,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
毕业论文缺了点数据,于是去爬了下某猫投诉。想想上次写爬虫还是一年前大数据课程的时候。这次写也依旧遇到了一些坑,有Python本身的,有爬虫的,于是记录下。
1.Unicode字符编码问题
这段数据我是从summary,即摘要开始看的,summary的内容都是\xxxxx。summary内容:
\u56e0\u4e3a\u4eca\u5929\u5c31\u8981\u79bb\u5f00\u6df1\u5733\uff0c\u8fd9\u4e9b\u4e1c\u897f\u90fd\u7528\u4e0d\u4e0a\u4e5f\u5e26\u4e0d\u8d70\uff0c\u8054\u7cfb\u5e97\u5bb6\uff0c\u5e97\u5bb6\u4e0d\u7ed9\u9000\u3002\u90fd\u662f\u6211\u5e76\u6ca1\u53bb\u62ff\u8d27\u7684\u3002\u5c31\u662f\u5f3a\u4e70\u5f3a\u5356\uff01\uff01\u8fd9\u4e0e\u5e73\u53f0\u7684\u552e\u540e\u65e0\u5fe7\u548c\u4e03\u5929\u65e0\u7406\u7531\u4e0d\u7b26\uff01\uff01
因为像被转码的样子,所以考虑下是否被转码了。丢到Unicode编码转换工具看下,点下Unicode转中文。
对比下原文为像被转码的样子,所以考虑下是否被转码了。丢到Unicode编码转换工具看下,点下Unicode转中文。爬到网页内容后,我们获取了summary的内容,将其转换为中文即可。
title=sn_title.split(',')[1] #获取标题 title = eval('u"%s"' % title) #转换Unicode编码为文字
2.变量类型问题
有一说一Python的的变量虽然不用指定变量类型,比较方便,但是真的很坑啊。我转换时间戳的时候以为是int类型(time.localtime() 函数接受的int类型的参数),但实际上爬取到的内容本来就是字符串,再用字符串处理函数去处理,得到的也还是字符串。所以在进行处理之前要进行强制变量类型转换
int(t)
如果不清楚变量的变量类型的,可以获取下变量类型
print(type(t))
3.在使用 requests.get 后一定要获取 text 变量的内容
html = requests.get(url,headers = headers, verify=False) html_data=html.text #网页源代码数据
requests.get 返回的是一个Response对象,这个对象里面存的是服务器返回的所有信息,包括响应头,响应状态码等。网页内容保存在返回的Response对象的text变量中。所以要先获取text变量中的内容。不要直接就拿返回的Response对象去用了
这篇关于写Python爬虫遇到的一些坑 转载:https://mp.weixin.qq.com/s/kfxJ7EKFeunGcjvBr0l7ww的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程