吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3024|回复: 6
收起左侧

[求助] 第一次拿python写的爬虫解码不了

[复制链接]
liqi 发表于 2019-7-13 16:05
QQ截图20190713155332.png
我在下面加p.decode('gb2312')报错说list不能解码于是我又将p转换为str还是报错,说str不能能解码

AttributeError: 'list' object has no attribute 'decode'
AttributeError: 'str' object has no attribute 'decode'
网站的编码是gb2323

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

邓大侠 发表于 2019-7-13 16:47
本帖最后由 邓大侠 于 2019-7-13 16:56 编辑

QQ截图20190713165224.png
从网站上爬取到内容一般都是字节型数据,
对data进行decode(gb2312)解码,就可以了.data是字节数据.
findall的返回值是一个list列表.直接str是没用的.得这样操作
p = re.compile(tj).findall(data.decode('gb2312'))
decode方法只能对字节数据操作,str支持的是encode()->转化为字节型数据类型
字节型的数据.decode()方法转化为str类型数据.
桥段 发表于 2019-7-13 16:48
87720108 发表于 2019-7-13 16:50
xiao智可以不帅 发表于 2019-7-13 17:07
import urllib.request
import re
data=urllib.request.urlopen("http://www.ttmeishi.com/QQqun").read().decode("gb2312")
tj = "<li>(.*?)</li>"
p = re.compile(tj).findall(data)
print(p)
楼主可以啦
你看看
李立新 发表于 2019-7-13 17:45
最近也在学习爬虫,跟着前辈学习学习
 楼主| liqi 发表于 2019-7-13 20:04
谢谢大家了,我知道了,虽然大家的代码都不一样,但是表达的意思都是一样的,数据爬出来后一定要进行编码,而不是去解通过正则表达式获得的内容
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-27 04:25

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表