为何names和scores显示是空列表?


import requests
from lxml import etree
url = 'https://m.douban.com/book/'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36'}
resp = requests.get(url,headers = headers)
e = etree.HTML(resp.text)
names = e.xpath('/html/body/div[3]/div[1]/section[2]/div/ul/li/a/span/text()')
scores = e.xpath('/html/body/div[3]/div[1]/section[2]/div/ul/li/a/div[2]/div/span[2]/text()')
for name,score in zip(names, scores):
    print(f'图书名:{name},评分为:{score}')

以上为程序
如题,names和scores打印出来是空列表,程序运行没有反应
在网页中用xpath检查貌似没有问题啊
为什么会出现这种状况?

resp.text 的数据和网页直接查看源码的数据,存在异常,可以先打印出来,再进行 xpath 提取,或者看一下这篇博客

正则表达式 与 XPath 语法领域细解,初学阶段的你,该怎么学?_梦想橡皮擦,专栏100例写作模式先行者-CSDN博客 周末不休息,更文! https://dream.blog.csdn.net/article/details/119633700