Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.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 抓取文本;I';我不确定Google Chrome Inspect元素是否为我提供了正确的XPath。在哪里可以找到正确的路径?_Python_Html_Xml_Xpath_Lxml - Fatal编程技术网

Python 抓取文本;I';我不确定Google Chrome Inspect元素是否为我提供了正确的XPath。在哪里可以找到正确的路径?

Python 抓取文本;I';我不确定Google Chrome Inspect元素是否为我提供了正确的XPath。在哪里可以找到正确的路径?,python,html,xml,xpath,lxml,Python,Html,Xml,Xpath,Lxml,在这里,我想抓取一个名为“fundsnetservices.com”的网站。具体来说,我想抓取每个程序下面的文本——它是关于一段文字的 使用Google Chrome Inspect方法,我可以拉这个 “/html/body/div[3]/div/div/div[1]/div/p[2]/text()” 。。。作为xpath。但是,每次打印文本时,它都返回[]。为什么会这样 response = urllib.request.urlopen('http://www.fundsnetservices

在这里,我想抓取一个名为“fundsnetservices.com”的网站。具体来说,我想抓取每个程序下面的文本——它是关于一段文字的

使用Google Chrome Inspect方法,我可以拉这个

“/html/body/div[3]/div/div/div[1]/div/p[2]/text()”

。。。作为xpath。但是,每次打印文本时,它都返回[]。为什么会这样

response = urllib.request.urlopen('http://www.fundsnetservices.com/searchresult/30/International-Grants-&-Funders/18.html')
tree = etree.HTML(response.read().decode('utf-16'))
text = tree.xpath('/html/body/div[3]/div/div/div[1]/div/p[2]/text()')

代码似乎返回空白节点。使用以下命令更正XPath:

//p[@class="tdclass"]/text()[3]

下面是我合并您的修订的方式吗?它对我来说仍然不太管用:“/html/body/div[3]/div/div/div[1]/div/p[2]/text()//p[@class=“tdclass”]/text()[3]”顺便说一句,我还意识到我想要访问的一些文本恰好是尾部文本;我把问题修好了!我意识到如何使用BeautifulSoup.:)很好
tree.xpath('//p[@class=“tdclass”]/text()[3]')
就足够了。:)