使用Python Selenium进行刮擦:遍历没有标记的html表

我是一个Python新手,正在开发一个有趣的小型抓取项目 . 试图从这里提取信息:http://www.airfleets.net/flottecie/American%20Airlines.htm

我在Python 2中使用Selenium

页面上有一张表格,上面有飞机细节 . 我想遍历此表的第二列,标记为"Active" . 通常,我会使用 find_element_by_id 选择表格 . 但是,此表没有 id 标记 . 我想我需要通过 find_element_by_xpath 找到该表,但我不确定查找表的路径语法,还有第二列中的行 .

总之,如果表没有任何标识标记,我如何遍历表的行?

回答(1)

3 years ago

您可以使用CSS选择器或XPath . 正如评论中所提到的,您的浏览器开发工具可能有内置的方法来执行此操作 .

该表的Xpath是

/html/body/table[4]/tbody/tr[1]/td/table[2]/tbody/tr/td[2]/table

你可以使用的CSS选择器是

body > table:nth-child(6) > tbody > tr:nth-child(1) > td > table:nth-child(3) > tbody > tr > td:nth-child(2) > table

例如,在Chrome中,您可以通过以下方式获取此信息:

(1)打开开发工具并找到元素 . 您可以通过右键单击任何元素并单击“检查”来执行此操作

enter image description here

2)右键单击DOM中的元素,然后选择“复制”>(复制选择器/复制XPath
enter image description here