Python中requests库爬取网站乱码的解决方法
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,Python中requests库爬取网站乱码的解决方法,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。【写在前面】在用re
千家信息网最后更新 2025年02月02日Python中requests库爬取网站乱码的解决方法
Python中requests库爬取网站乱码的解决方法,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
【写在前面】
在用requests库对自己的CSDN个人博客(https://blog.csdn.net/yuzipeng)进行爬取时,发现乱码报错(\xe4\xb8\xb0\xe5\xaf\x8c\xe7\x9),如下图所示:
网上 查找了一些方法,以为是遇到了网站加密处理。后来发现 通过F12还 是能获取网页的元素,那么有什么办法能规避乱码问题呢?答案是:用selenium.
【效果如下】
【示例代码】
# coding=utf-8
# @Auther : "鹏哥贼优秀"
# @Date : 2019/10/16
# @Software : PyCharm
from selenium import webdriver
url = 'https://blog.csdn.net/yuzipeng'
driver = webdriver.Chrome("F:\\Python成长之路\\chromedriver.exe")
driver.get(url)
urls = driver.find_elements_by_xpath('//div[@class="article-item-box csdn-tracking-statistics"]')
blogurl = ['https://blog.csdn.net/yuzipeng/article/details/' + url.get_attribute('data-articleid') for url in urls]
titles = driver.find_elements_by_xpath('//div[@class="article-item-box csdn-tracking-statistics"]/h5/a')
blogtitle = [title.text for title in titles]
myblog = {k:v for k,v in zip(blogtitle,blogurl)}
for k,v in myblog.items():
print(k,v)
driver.close()
【知识点】
1、selenium使用
基本的selenium安装方法、使用方法
(https://blog.csdn.net/yuzipeng/article/details/100179696)
2、推导式使用
(1)列表推导式:[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]
类似这样就可以实现将for循环的多行程序浓缩到一句代码 中,如
blogtitle = [title.text for title in titles]
而如果用for循环写,则需要这样:
blogtitle = []for title in titles: blogtitle.append(title)
(2)字典推导式:{ key表达式: value表达式 for value in collection if condition }
这样的写法,一般用于key和value能相互转换;但是如果key和value是完全不同的列表,那就需要用zip对key/value进行整合。
myblog = {k:v for k,v in zip(blogtitle,blogurl)}
如果对zip函数不熟悉,可以用下面的例子来 介绍下。
a = ['a', 'b', 'c']b = [1, 2, 3]c = {k: v for k, v in zip(a, b)}print(c) 结果是:{'a': 1, 'b': 2, 'c': 3}
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
方法
表达式
乱码
网站
代码
变量
知识
帮助
循环
不同
优秀
清楚
个人
使用方法
例子
元素
内容
写法
函数
办法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
贵州语音网络技术分类服务标准
工信部网络安全宣传周
浏览器打开提示找不到服务器
广东乐拼互联网科技
徐州游戏软件开发招聘网
密码文件属于数据库组成部分
湖南的英雄联盟服务器云主机
数据库用户log2n模式
2021网络安全公司
快速删除数据库数据方法
小银行软件开发靠谱吗
重邮网络安全考研
网络安全顶层设计情况
深圳简赞网络技术有限公司
金融论文英文数据库
网民对网络安全的认识
崇明区网络营销软件开发信息中心
网页传奇服务器
快商网络技术有限公司怎么样
数据库读出数据乱码
软件开发人才招娉
悟空辅助数据库更新失败怎么办
rman数据库迁移
软件开发项目私活在哪接
excel匹配自动数据库
交换机和视频服务器有什么区别
服务器开机风扇响
酒店数据库表
网络安全员怎么考试
计算机网络技术女生的就业方向