<p>这里可以应用两个基本选项:</p>
<ul>
<li>模拟<code>onclick()</code>调用中涉及的逻辑-在您的情况下,使用<a href="http://docs.python-requests.org/en/latest/" rel="nofollow noreferrer">^{<cd3>}</a>或<a href="http://wwwsearch.sourceforge.net/mechanize/" rel="nofollow noreferrer">^{<cd4>}</a>进行<code>dataform</code>表单提交</li>
<li><p>高级方法-使用<a href="http://selenium-python.readthedocs.org/" rel="nofollow noreferrer">^{<cd6>}</a>自动实现真正的浏览器,无头(<code>PhantomJS</code>)与否-找到链接并单击它:</p>
<pre><code>from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get('url here')
driver.find_element_by_class_name('download-data-link1').click()
</code></pre></li>
</ul>
<p>不过,据我所知,点击链接会触发一个“下载”浏览器对话框出现-然后<code>PhantomJS</code>不是一个选项,因为它不支持下载。如果是<code>Chrome</code>或<code>Firefox</code>,则需要调整浏览器功能,以便在不打开弹出窗口的情况下自动下载文件,请参见:</p>
<ul>
<li><a href="https://stackoverflow.com/questions/1176348/access-to-file-download-dialog-in-firefox">Access to file download dialog in Firefox</a></li>
<li><a href="https://stackoverflow.com/questions/18759762/firefox-selenium-webdriver-and-download-a-csv-file-automatically">Firefox + Selenium WebDriver and download a csv file automatically</a></li>
</ul>