需要帮助查找埋没在HTML表格中没有ID的数据(Selenium / Python)

时间:2015-09-14 01:08:31

标签: python selenium-webdriver

该页面是一个房地产网站,我想从列表中提取数据。 http://www.josephbernard.net/properties.php?state=oregon

我想在这些单元格中的超链接中提取数据:

newProperties = []
...

<td align="left" bgcolor="#FFFFFF">$725,000</td>

<td align="left" bgcolor="#FFFFFF"> Available</td>

*<td align="left" bgcolor="#FFFFFF">
    <a href="/washington">


 Washington Street Studios
<br>1410 Washington Street SW<br>Albany, Oregon, 97321
</a>
</td>*

<td align="center" bgcolor="#FFFFFF">15</td>

<td align="center" bgcolor="#FFFFFF">8.49%</td>

<td align="center" bgcolor="#FFFFFF">$48,333</td>

</tr>

那么我可以附加到newProperties:

newProperties.append({
    'title': "Washington Street Studios",
    'URL': "(/washington)"
    'location': "Albany, Oregon, 8731"
})

父节点中唯一的问题似乎没有任何我可以正确定位的ID或类。我有什么想法可以做到这一点吗?

1 个答案:

答案 0 :(得分:1)

这应该有用......

此页面包含嵌套表格。每个列表都在TABLE中,因此您需要通过CSS选择器找到正确的表。然后检查并查看里面是否有2个链接(第一个链接始终是图片),有时地址没有链接。如果有两个,则第二个链接是您要查找的链接。

listings = driver.driver.find_elements_by_css_selector("table[style='border-bottom:#ccc 1px solid;']")
for listing in listings
    links = listing.find_elements_by_tag_name("a")
    if len(links) > 1
        // do something with links[1]