gpt4 book ai didi

javascript - 使用 Python mechanize 使用 javascript 处理特定表单

转载 作者:行者123 更新时间:2023-11-30 18:30:34 25 4
gpt4 key购买 nike

我正在尝试使用 Python Mechanize 模块通过以下形式检索数据:http://archive.stsci.edu/kepler/data_search/search.php?form=fuf

我遇到的问题是左下角的“输出列”区域,它使用 javascript 指定输出格式。我希望能够选择一个特定的项目列表,通常可以使用周围的 javascript 按钮进行选择。

我是 Mechanize 的新手,很久没有看过 javascript 了。我一直在查看负责任的 javascript,但不确定该怎么做。有小费吗?

更具体地说:有没有办法使用 Mechanize 来修改列表中的元素?

最佳答案

我建议直接对该表单进行 POST 调用,而不是通过 mechanize 以某种方式与表单进行交互。以下是我如何使用 mechanize 执行此操作:

import mechanize
from urllib import urlencode
opener = mechanize.build_opener()
data = {"resolver":"NED","radius":"0.02","equinox":"J2000","ktc_target_type[]":"LC","ktc_target_type[]":"SC","extra_column_name_1":"ktc_kepler_id","extra_column_value_1":"","extra_column_name_2":"ktc_kepler_id","extra_column_value_2":"","extra_column_name_3":"ktc_kepler_id","extra_column_value_3":"","extra_column_name_4":"ktc_kepler_id","extra_column_value_4":"","selectedColumnsCsv":"Mark,ktc_kepler_id,ktc_investigation_id,sci_data_set_name,ktc_target_type","selectedColumnsList[]":"ktc_target_type","availableColumns":"Mark","ordercolumn1":"ang_sep","ordercolumn2":"ktc_kepler_id","ordercolumn3":"","coordformat":"sex","outputformat":"HTML_Table","max_records":"1001","max_rpp":"100","action":"Search"}
d = urlencode(data)
url = 'http://archive.stsci.edu/kepler/data_search/search.php'
stuff = opener.open(url,d)
info_i_want = stuff.read()

基本上,将您的搜索内容放入字典,对服务器进行 POST 调用,然后读取您的响应。

关于javascript - 使用 Python mechanize 使用 javascript 处理特定表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9752965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com