Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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 如何查找元素';使用XPath的位置是什么?_Python_Xpath_Web Scraping_Splinter - Fatal编程技术网

Python 如何查找元素';使用XPath的位置是什么?

Python 如何查找元素';使用XPath的位置是什么?,python,xpath,web-scraping,splinter,Python,Xpath,Web Scraping,Splinter,我一直在尝试编写一个简单的脚本,以便上传200多个链接到我正在工作的网站(我对python的了解很差,对HTML的了解更差,当然我不是作为一名web开发人员,我只需要上传这些链接) 好吧,我现在的情况如下:我使用(因此,Python)在网站中导航。此网站的某些部分标题将与我在.csv表中的值进行比较 例如,在中,我正在查找这个链接/admin/pages/5,我想将链接的标题(Explorar subpáginas de'MA111-Cálculo I')与我的.CSV表进行比较。问题是链接的标

我一直在尝试编写一个简单的脚本,以便上传200多个链接到我正在工作的网站(我对python的了解很差,对HTML的了解更差,当然我不是作为一名web开发人员,我只需要上传这些链接)

好吧,我现在的情况如下:我使用(因此,Python)在网站中导航。此网站的某些部分标题将与我在.csv表中的值进行比较

例如,在中,我正在查找这个链接/admin/pages/5,我想将链接的标题(Explorar subpáginas de'MA111-Cálculo I')与我的
.CSV
表进行比较。问题是链接的标题没有出现在网站上

为了找到链接,我想我应该使用find_by_xpath(),但我不知道怎么做。我猜是这样的


我将感谢任何帮助!我希望我已经说清楚了。

您首先需要定义如何检测该url,例如,“它总是在某个按钮的右边”或“它是表中的第二行”,这样您就可以构建相应的xpath(这是在

我不完全确定,但这可以给你解决办法

url = browser.find_by_xpath('//td[@class="children"]/a')[0]['href']
例如,如果通过链接名称查找标记,请尝试以下操作:

url = browser.find_by_xpath('//a[contains(@title, "MA111 - Cálculo I")]')[0]['href']

如果您在那里检查,xpath会说“在整个DOM中查找名为
a
的标记,其中包含
”MA111-Cálculo I"
title
属性中。

您最初对目标元素了解多少:链接引用
href
title
a
元素索引/位置在
DOM
中,您希望得到什么输出?很难理解您的问题…首先,谢谢!是的,它确实给了我一个链接,b但第一个(因为[0])。我想知道的是:有没有什么方法可以让我搜索标题中包含一个单词的链接?例如,在我发布的截图中,我想搜索“Cálculo I”例如,谢谢!我不得不稍微修改它,因为我没有确切指定我想要的内容。
browser.find_by_xpath('//a[contains(@title,“MA111-Cálculo I”)和contains(@title,“Explorar”)][0]['href']
是最终版本。非常感谢。我在哪里可以找到更多关于xpath语法的信息?我认为它在将来可能会很有用。我认为这将是最好的源代码