根据日期用 python 抓取 table
scraping table with python based on dates
自一周前以来,我一直在尝试从该站点 https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx 中抓取 table,但我不知道该写什么,我很困惑。
我正在尝试从 2015-2020 年(2015 年 11 月 20 日至 2020 年 11 月 20 日,
但问题是默认日期和我选择的日期之间的 link 仍然是 same.please 以任何方式帮助我,谢谢你!
import requests
from bs4 import BeautifulSoup
import pandas as pd
headers={
"User-Agent":"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36",
"X-Requested-With":"XMLHttpRequest"
}
url = "https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx"
import requests
from lxml import html
response = requests.get(url)
content= response.content
print(content)
您需要使用Selenium. You can install Selenium and then you can install a driver。我使用 chrome 然后一旦你安装它记下该路径并将你的 DRIVER_PATH
设置为位置
在下面的代码中,我所做的基本上是请求您发布的 link,然后我输入您可以更改的日期。最后我点击提交按钮。这会在日期范围内生成 table。现在您可以编写后续代码以从 table.
中抓取信息
代码
import requests
from selenium import webdriver
DRIVER_PATH = 'Yourpath/chromedriver'
driver = webdriver.Chrome(executable_path=DRIVER_PATH)
driver.get('https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx')
start_date = driver.find_element_by_id("ctl00_PlaceHolderMain_biWebKursTransaksiBI_txtFrom")
start_date.send_keys("15-Nov-20")
end_date = driver.find_element_by_id("ctl00_PlaceHolderMain_biWebKursTransaksiBI_txtTo")
end_date.send_keys("20-Nov-20")
submit_button = driver.find_element_by_id("ctl00_PlaceHolderMain_biWebKursTransaksiBI_btnSearch1").click()
自一周前以来,我一直在尝试从该站点 https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx 中抓取 table,但我不知道该写什么,我很困惑。
我正在尝试从 2015-2020 年(2015 年 11 月 20 日至 2020 年 11 月 20 日,
import requests
from bs4 import BeautifulSoup
import pandas as pd
headers={
"User-Agent":"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36",
"X-Requested-With":"XMLHttpRequest"
}
url = "https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx"
import requests
from lxml import html
response = requests.get(url)
content= response.content
print(content)
您需要使用Selenium. You can install Selenium and then you can install a driver。我使用 chrome 然后一旦你安装它记下该路径并将你的 DRIVER_PATH
设置为位置
在下面的代码中,我所做的基本上是请求您发布的 link,然后我输入您可以更改的日期。最后我点击提交按钮。这会在日期范围内生成 table。现在您可以编写后续代码以从 table.
中抓取信息代码
import requests
from selenium import webdriver
DRIVER_PATH = 'Yourpath/chromedriver'
driver = webdriver.Chrome(executable_path=DRIVER_PATH)
driver.get('https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx')
start_date = driver.find_element_by_id("ctl00_PlaceHolderMain_biWebKursTransaksiBI_txtFrom")
start_date.send_keys("15-Nov-20")
end_date = driver.find_element_by_id("ctl00_PlaceHolderMain_biWebKursTransaksiBI_txtTo")
end_date.send_keys("20-Nov-20")
submit_button = driver.find_element_by_id("ctl00_PlaceHolderMain_biWebKursTransaksiBI_btnSearch1").click()