2 回答
TA贡献1828条经验 获得超13个赞
您看到的返回是正确的,因为它Chapter02a是指向下一部分的“相对”链接。未列出完整的 url,因为这不是它在 html 中的存储方式。
要获取完整的网址,您可以使用:
url_base = 'https://www.math.wisc.edu/~mstemper2/Math/Pinter/'
sections = chapter_html.xpath('//ol[@id="ProbList"]/li/a/@href')
section_urls = [url_base + s for s in sections]
TA贡献1793条经验 获得超6个赞
您也可以直接在XPATH级别进行串联以从相对链接重新生成 URL:
from lxml import html
import requests
chapter_req = requests.get('https://www.math.wisc.edu/~mstemper2/Math/Pinter/Chapter02')
chapter_html = html.fromstring(chapter_req.content)
sections = chapter_html.xpath('concat("https://www.math.wisc.edu/~mstemper2/Math/Pinter/",//ol[@id="ProbList"]/li/a/@href)')
print(sections)
输出:
https://www.math.wisc.edu/~mstemper2/Math/Pinter/Chapter02A
添加回答
举报