我试图从动态生成的网页获取数据。从我的搜索中我发现硒可能是最好的选择,但我遇到了一些问题。我想从中获取数据的网页是 this one我的测试搜索数据是“10403782”
到目前为止,我有以下的源代码,能够找到搜索栏和搜索,但正如你可以看到的结果回来是多个项目,我试图找到一个没有小房子的左边灰色。在
# Initial connection and search
driver.get("http://firmaopslag.dk")
element = driver.find_element_by_id("firmanavn")
element.send_keys("10403782")
element.send_keys(Keys.RETURN)
# On search result page, find the result with the house
searchResults = driver.find_element_by_id("searchresult")
我认为找到蓝色房子的一种方法是通过查看颜色值,遍历所有结果项,然后找到与灰色房子颜色不匹配的那一个。但是,每当我像上面这样进行搜索时,searchResults总是空的。我试着用类名,id,标签来搜索。。似乎没有什么东西能找到结果。基本上,正如我提到的,我想找到蓝色房子的结果,并点击它。在
编辑: 我认为我最大的问题是,一旦搜索完成,我需要寻找一个不同的网页或一个不同的元素,我已经从最初的网页
最后一部分,一旦我找到了正确的页面,我认为beauthulsoup是获得我感兴趣的数据的最佳方式,不是吗?在
您可以检查
style
属性中的color
:请注意,我还添加了一个wait,以便在执行搜索后显示搜索结果。在
您可以使用
BeautifulSoup
来进一步解析来自driver.page_source
的HTML,但不一定需要它,因为您可以使用selenium
定位元素。在相关问题 更多 >
编程相关推荐