【发布时间】:2017-10-10 08:55:57
【问题描述】:
我正在尝试构建一个工具,用于从使用 Flash 和 Oracle BI 工具的网站自动抓取信息。当我们选择事物时会显示信息,并使用 Flash 渲染图像。
由于我无法从图像本身中删除信息(据我目前所知),我发现右键单击图像,打开一个带有“切换到表格”的菜单并再次单击它,打开一个包含数据的页面在可从 HTML 树中抓取的表格上。我的问题是点击 Flash 对象(图像),比如:
from selenium.webdriver.support import expected_conditions as EC
elem = WebDriverWait(browser, 20).until(EC.presence_of_element_located((By.XPATH, '(//embed[@type="application/x-shockwave-flash"])[1]')))
menu=ActionChains(browser).move_to_element_with_offset(elem, 61, 61).click().perform()
然后我尝试单击“切换到表格”选项,但我无法这样做,因为我相信 selenium 仍在单击菜单下方的图像。我尝试过的(使用不同的偏移值并使用 elem 和菜单元素但没有成功):
ActionChains(browser).move_to_element_with_offset(elem, 75, 75).click()
有什么方法可以做到这一点? 网址是:http://www.adrreports.eu/
获取图片的步骤:
单击语言 -> 搜索报告 -> 选择一个字母,然后选择一种药物(出现新选项卡)-> 选择名为“所选反应的个别病例数”的选项卡(右上方第 4 个),然后尝试从左侧的图像中获取信息
谢谢,
【问题讨论】:
-
你应该尝试使用的链接是
http://www.adrreports.eu/tables/product/a.html在链接中你可以看到.html之前的字母a,这是可以更改为z的字母。现在尝试继续处理这条线索。 -
感谢您的意见,但我的问题是一个非常愚蠢的问题,因为我在正确的轨道上但没有给页面加载足够的时间。谢谢!
标签: python selenium flash web-scraping