【发布时间】:2020-11-29 03:19:35
【问题描述】:
从一周前开始,我一直试图从这个网站上刮一张桌子https://www.bi.go.id/id/moneter/informasi-kurs/transaksi-bi/Default.aspx,但我不知道该写什么,我很困惑。 我试图从 2015 年至 2020 年(2015 年 11 月 20 日至 2020 年 11 月 20 日)抓取 kurs 交易表, 但问题是默认日期和我选择的日期之间的链接仍然相同。请以任何方式帮助我,谢谢!
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)
【问题讨论】:
-
我不清楚您所说的从 2015 年到 2020 年是什么意思?有没有办法生成那个确切的链接?如果是这样,我可以尝试编码。
-
我想获取 2015 年 11 月 20 日 - 2020 年 11 月 20 日的数据,我已经编辑了上面的问题
-
问题是当您选择两个不同的日期时,它不会在 url 中生成查询参数,因此您需要使用 python selenium 进行网络抓取。我当然可以为您提供有关如何从表中抓取数据的代码,但您将无法使用 bs4 来抓取特定日期的数据。
-
谢谢..那么我必须先安装 selenium..关于代码你介意告诉我吗?或者可能只是剪掉它..对不起,因为我真的不知道如何得到它。谢谢你!
-
我发布了一个解决您的日期范围问题的解决方案。现在您可以尝试抓取生成的表格,如果遇到问题,您可以将其作为单独的问题发布。干杯。
标签: python pandas screen-scraping scrape