私はこのウェブサイトhttps://www.cashbackforex.com/en-US/tools/economic-impacts.aspxのテーブルからPythonを使用してデータを取得する必要があります。 私が書いたコードは、これまで複数の入力を持つPythonでWebページをスクラップ
from bs4 import BeautifulSoup
import requests
url = 'https://www.cashbackforex.com/en-US/tools/economic-impacts.aspx'
with requests.Session() as session:
session.headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36'}
# parsing parameters
response = session.get(url)
soup = BeautifulSoup(response.content, "lxml")
print(soup.select('input[type="button"]'))
data = {
'dnn$ctr1601$Chart$ddlCurrencies': 'USD',
'dnn$ctr1601$Chart$ddlReports': 'US Change in NonFarm Payrolls',
'dnn$ctr1601$Chart$ddlTimeZone': '(UTC) Coordinated Universal Time',
'__EVENTTARGET': soup.find('input', {'name': '__EVENTTARGET'}).get('value', ''),
'__EVENTARGUMENT': soup.find('input', {'name': '__EVENTARGUMENT'}).get('value', ''),
'__VIEWSTATE': soup.find('input', {'name': '__VIEWSTATE'}).get('value', ''),
'__VIEWSTATEGENERATOR': soup.find('input', {'name': '__VIEWSTATEGENERATOR'}).get('value', ''),
'btnApplyTools': soup.find('input', {'id': 'btnApplyTools'}).get('value', '')
}
# parsing data
response = session.post(url, data=data)
soup = BeautifulSoup(response.content, "lxml")
print(soup)
ですが、私はプログラムを実行するたびに、私は、テーブル内の値を見つけることができません。私はプログラムがサーバーに入力値を送信しないと思いますが、わかりません。
次の表:
あなたが何を要求模倣しようとしている?私が赤い "Apply"ボタンをクリックすると、ブラウザ開発ツールの 'economic-impacts.aspx'へのPOSTは表示されません。 – alecxe
変数を変更すると、米ドル、米国のNonfarm Payrollの変更が適用されます下。その下の「イベント履歴」という表が変更されます。 そのテーブルを抽出する必要があります。しかし、私がBeautifulSoupでそのテーブルを読むと、それらの行は存在しません。 –