一.解析网页的内容
1.使用requests请求发送请求头
2.使用etree解析网页
注意:区分text和content的区别
如果是text 运行的话便会出现乱码现象
此时我们只需要把text改为content,再次运行
出现【中文乱码】原因
使用requests库时,选择使用的文本响应方法不合适,且没有在代码中添加设置合适的编码,以致于使用【response.text】自动获取到的网页编码,与实际网页的编码不一致,进而产生【中文乱码】。
1、【response.text】会自动根据HTTP头部去推测网页的编码,解码并返回解码后的文本。
2、【response.content】不会解码,直接以二进制形式返回。
以下是text和content的区别:
3.使用xpath解析解析网页内容,添加读取文本内容
(在网页中按F12选中要解析的内容并右击复制xpath路径)
4.使用csv写入文件
attractions.csv:写入文化名;
'w':写入,
newline='':换行,
encoding='utf-8':设置编码格式
注意:writerow()和writerows()的区别
writerow()
writerow()将一个列表全部写入csv的同一行。
writerows()
writerows()将一个二维列表中的每一个列表写为一行。