我能够提交一个表格来捕获此网站上的各个页面数据:www.asx.com.au
通常,在搜索栏中,您将输入股票代码(例如,“ Woolworths”为“ WOW”),然后单击搜索,然后转到该股票页面。
这是我正在尝试的代码。问题是,表单没有名称,所以我不确定如何引用它。任何帮助表示赞赏:
import requests
url = 'https://www.asx.com.au/s/search.html'
payload = {'query':'WOW'}
r = requests.get(url, params=payload)
with open("requests_results.html","wb") as f:
f.write(r.content)
答案 0 :(得分:1)
欢迎来到Stackoverflow!
您要做的就是将URL更改为https://search.asx.com.au/s/search.html?query=WOW&collection=asx-meta&profile=web
,该URL在您搜索任何术语时在网站中形成。因为网站使用GET
方法将数据传递为形式,该形式接受URL本身(?query=WOW&collection=asx-meta&profile=web
)中字符串参数的参数。
因此代码将类似于
import requests
url = 'https://search.asx.com.au/s/search.html?query=WOW&collection=asx-meta&profile=web'
with open("requests_results.html","wb") as f:
f.write(requests.get(url).content)
干杯!
答案 1 :(得分:0)
找到了如何使用请求传递内容以构造URL的方法(在“将参数传递到URL”下):http://docs.python-requests.org/en/master/user/quickstart/
有效载荷= {'key1':'value1','key2':'value2'} r = request.get('http://httpbin.org/get',params = payload)