该页面是一个房地产网站,我想从列表中提取数据。 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或类。我有什么想法可以做到这一点吗?
答案 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]