繁体   English   中英

Python 单击 web 页面上的按钮,没有 selenium

[英]Python click button on web page without selenium

所以网页上有一个按钮,点击后会下载一个csv文件。 过去我曾使用 selenium 来执行此操作,但鉴于此脚本的当前应用程序正在数据块上运行,我宁愿不使用 web 驱动程序。 但是,当我检查按钮时,我看不到 URL 或 JS function 调用。 这是 html 的样子:

<button id="exportReport" class="button">
                    Export Report                   
                </button> == $0

我会链接该网页,但它需要登录。有什么方法可以模拟通过请求、机械化或美汤单击此按钮?

将我的评论复制到答案:

使用 Chrome 开发工具 (F12) > 网络选项卡。 点击web页面上的按钮,查看CSV来自哪里:

Chrome 工具网络标签

尝试机械化:

import mechanize

br = mechanize.Browser()
br.set_handle_robots(False)
br.set_handle_equiv(False)
br.set_handle_refresh(False)
br.addheaders = [('User-agent', 'Mozilla/5.0')] 

url = 'https://www.your_url'
br.open(url, timeout=10.0)

# If exist any form
br.select_form(nr= 0)
br.form['name_of_form']=str('text_to_search')

# click on the button and saved it into a variable
data = br.submit()

另一种方法是尝试使用 Selenium,以防它是 javascript 按钮:

data=browser.find_element_by_xpath("//input[@id='exportReport']")
data=browser.execute_script("arguments[0].click();", data)

我希望你有成功。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM