Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法使用有序列表(<;li>;<;/li)从中检索所有URL?_Python_Html_Xpath_Scrapy - Fatal编程技术网

Python 无法使用有序列表(<;li>;<;/li)从中检索所有URL?

Python 无法使用有序列表(<;li>;<;/li)从中检索所有URL?,python,html,xpath,scrapy,Python,Html,Xpath,Scrapy,我正在尝试从锚标记中检索所有url。我使用了查询response.selector.xpath('//li[@class=“active”]//a/@href').extract(), 提取所有的url,但我只得到几个查询 该网页的结构如下: `<ul class="data"> <li id="all" class="active"> <a class="fit" href="#1"></a>

我正在尝试从锚标记中检索所有url。我使用了查询
response.selector.xpath('//li[@class=“active”]//a/@href').extract()
, 提取所有的url,但我只得到几个查询

该网页的结构如下:

    `<ul class="data">
        <li id="all" class="active">
            <a class="fit" href="#1"></a>
                <div class="1">
                    <a target="_blank" href="www.yahoo.com">
                </div>
                <div class="2">
                    <a target="_blank" href="www.google.com">
                </div>  
            <a class="fit" xmlns:listval="com.indiatimes.cms.utilities.CMSDateUtility" xmlns:java="java" href="#2"></a> 
                <div class="1">
                    <a target="_blank" href="www.facebook.com">
                </div>
                <div class="2">
                    <a target="_blank" href="www.bing.com">
                </div>  
            <a class="fit"  xmlns:listval="com.indiatimes.cms.utilities.CMSDateUtility" xmlns:java="java" href="#3"></a> 
                <div class="1">
                    <a target="_blank" href="www.amazon.com">
                </div>
                <div class="2">
                    <a target="_blank" href="www.flipkart.com">
                </div>  
            <a class="fit"  xmlns:listval="com.indiatimes.cms.utilities.CMSDateUtility" xmlns:java="java" href="#4"></a> 
                <div class="1">
                    <a target="_blank" href="www.snapdeal.com">
                </div>
                <div class="2">
                    <a target="_blank" href="www.infibeam.com">
                </div>          
        </li>
</ul>`
`
`
前面的查询只显示了“www.yahoo.com”和“www.google.com”。
我需要做什么调整才能获得所有的href

尝试CSS选择器而不是Xpath

for link in response.css("li.active a"):
     link_id = link.css("::attr(href)").extract_first()

我尝试了你的代码,得到了所有的@href字段。你能展示你的结果吗?好吧,我在另一个网页上应用了这个,这个网页有类似的结构,但我只得到href的正常运行时间,没有超过这个时间!请在浏览器中禁用javascript,并检查您正在查找的内容是否仍在其中。@VMRuiz禁用java脚本后,我找不到内容。难怪我没有得到那些href!我现在该怎么办?(因为这更像是抓取js,而不是html)您需要使用浏览器呈现页面,例如,我尝试了您的代码,我得到了ExpressionError:pseudo class:attr()未知,我正在尝试弄清楚。您是否可以向我建议一个Xpath查询?