【发布时间】:2019-11-11 20:51:29
【问题描述】:
网站上有一个下载 csv 文件的链接。该链接在表格中,但实际的下载链接是隐藏的。
<div id="testjs">
<div test-example="">
<table test-example="">
<tr test-example="">
<th test-example="">Car</th>
<th test-example="">File</th>
</tr>
<tr test-example="">
<td test-example="">Ford</td>
<td test-example="">
<a test-example="" href="#">ford.csv</a>
</td>
</tr>
</table>
</div>
</div>
我正在尝试通过使用 python/selenium 抓取网站来自动下载文件。
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get("https://www.example.com")
driver.find_element_by_link_text('ford.csv')
当上面的最后一行运行时,脚本返回:
<selenium.webdriver.remote.webelement.WebElement (session="<example session string>", element="<example element string>")>
当我运行下面的代码时没有任何反应:
driver.find_element_by_link_text('ford.csv').click()
我如何获取要下载的文件?
【问题讨论】:
-
使用 Chrome 无头浏览器而不是 PhantomJS
-
您使用 chrome 遇到的问题有什么解决方案吗?
-
我使用 chrome 驱动程序部分能够解决我的问题,但不是无头的。 DebanjanB 的解决方案确实有效。然而,有一个“允许 cookie”弹出,阻碍了我必须先点击的下载链接。无标题 chrome 的问题是没有下载任何内容。当 chrome 不是无头文件时,下载的文件。
-
检查无头铬的这个答案看看是否有帮助stackoverflow.com/questions/58770745/…
标签: python selenium xpath css-selectors webdriverwait