使用Scrapy无法从下拉列表中提取数据

2024-03-29 05:11:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从嵌入网站的JS下拉列表中删除一个市场列表:https://e27.co/startups

使用ScrapyShell,我试图从“markets”下拉菜单中删除市场列表,但做不到。你知道吗

在运行scrapy shell 'https://e27.co/startups'之后,我尝试同时使用response.css()response.xpath()。你知道吗

对于css选择器:

response.css('#startups-page > div > div.search-block.box-view > div.row.mbt-s > div > div > ul > li:nth-child(3)')

对于xpath,我尝试了:

response.xpath('//*[@id="startups-page"]/div/div[1]/div[2]/div/div/ul/li[3]/a"')

两者都是通过检查下拉元素获得的。你知道吗

但是,将返回一个空列表。你知道吗

我可以知道如何从下拉列表中删除所有不同的市场吗?谢谢。你知道吗


Tags: httpsdiv列表市场网站responsepagejs
1条回答
网友
1楼 · 发布于 2024-03-29 05:11:18

此数据位于对https://e27.co/startups?json的单独小请求中。你知道吗

scrapy shell "https://e27.co/startups?json"我可以用这个表达式得到整个列表:

In [1]: response.css('select#market option::text').extract()
Out[1]: 
[u'Advertising',
 u'Aerospace',
 u'Agency & Consulting',
 u'Agritech',
 u'Architecture & Construction',
...

相关问题 更多 >