|
第一次发帖,就直接先上代码了。
import requests
from lxml import etree
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36'
}
url = 'https://www.qiushibaike.com/text/'
res = requests.get(url, headers = headers)
selector = etree.HTML(res.text)
url_infos = selector.xpath('//div[(@class="article block untagged mb15 typs_hot")]')
for url_info in url_infos:
id = url_info.xpath('div[1]/a[2]/h2/text()')[0]
print(id)
我对xpath的节点选择理解不透彻,上面的代码中一共使用了两次xpath,第一次定位到每一个帖子的div ,然后传入url_info中,在从每一个帖子板块中提取所有的id信息。
执行之后只返回了一个id,并不是我所预期的结果。我希望返回整个页面中所有发帖人的id
ps:
在糗事百科的网站中不仅有div[(@class="article block untagged mb15 typs_hot还有article block untagged mb15 typs_long其他的类,但是就算是因为我的这部分没有写好,返回的结果也不应该是一个结果呀。
|
|