Scrapy shell如何单独提取y轴数值,解决XPath报错与403状态码问题
问题解决指南
1. 403状态码错误
403错误是站点反爬策略拦截了请求,和页面的打印弹窗没有关联。Scrapy默认携带的爬虫标识请求头会被目标站点识别拦截,直接修改启动命令带上浏览器UA即可解决:
scrapy shell -s USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "https://research.investors.com/StockResearch/Scripts/ibdChart/print.html?t=1634287038721¶ms=MS=0,RS=0,DGO=0,DisplayMS=1,DisplayHelp=1,DisplayDGO=0,LDB=0,DisplayLDB=1,symbol=mcb,type=daily"
2. XPath表达式无效错误
你的XPath存在括号不匹配的问题,多余的右括号导致语法报错,修正后的提取语句如下:
response.xpath("(//div[@id='chartContainer']//*[name()='svg'])[6]//*[name()='g'][@font-size='11pt']//*[name()='text']/text()").extract()
内容的提问来源于stack exchange,提问作者FRancis
相关产品推荐
相关产品推荐

