请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,爬取京东数据,打印出来的都是【】是什么原因啊

def jd_book():
#获取京东html信息
url = ‘http://search.jd.com/Search?keyword=python入门&enc=utf-8&wq=python入门&pvid=c22f7a0681084b07b4b7cbfe33026ac6
kv = {‘user-agent’:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36’}
resp = requests.get(url,headers = kv)
resp.encoding = ‘utf-8’
jd = resp.text
#获取xpath对象
selector = html.fromstring(jd)
ul_list = selector.xpath(’//div[@id = “J_goodsList”]/ul/li’)
print(len(ul_list))

for li in ul_list:
    book_name = li.xpath('div/div[class="p-name"]/strong/a/@href')
    print(book_name)

if name == ‘main’:
jd_book()

正在回答

1回答

可能是京东网站升级了,HTML结构发生了变化,导致我们写的规则无法获取到对应的值

0 回复 有任何疑惑可以回复我~
  • 那怎么办?我也一样
    回复 有任何疑惑可以回复我~ 2022-01-06 08:08:15
  • NavCat 回复 EdwardBBQ #2
    我已经更新了代码,你需要重新拉一下代码
    回复 有任何疑惑可以回复我~ 2022-01-15 15:52:02
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信