Chrome复制的xpath抓取为空的问题

解决办法:去掉xpath中的tbody即可。

原因:浏览器复制的xpath会自动优化,自己加上tbody,其实网页源代码里是没有的。


贴个例子

import requests
from lxml import etree
header={'User-Agent': 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'}
#豆瓣图书排行网站获取图书的名字
url='https://book.douban.com/top250'
r=requests.get(url,headers=header).content
#print(r)#cookies=Cookies
html=etree.HTML(r)
print(html)
#xpath 是从chrome 获得的   最后的@title 自己加的 ,获取图书的标题
#ids=html.xpath('//tr[@class="item"]')
#ids=html.xpath('//tr[@class="item"]/td/div/a/@title')
ids=html.xpath('//*[@id="content"]/div/div[1]/div/table[1]/tr/td[2]/div[1]/a/@title')
print(ids)
'''
for id in ids:
    book_name = id.xpath('td/div/a/@title')
    print(book_name)
'''
#//*[@id="content"]/div/div[1]/div/table[1]/tbody/tr/td[2]/div[1]/a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值