首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分析数据,Python

分析数据,Python
EN

Stack Overflow用户
提问于 2018-11-05 22:15:40
回答 1查看 138关注 0票数 0

我对Python很感兴趣。我需要解析弗雷德(https://fred.stlouisfed.org/series/A191RI1A225NBEA)的数据。因此,我需要让Python访问这个网站,然后单击“下载”按钮,然后单击“CSV(数据)”按钮,然后将这些数据保存在Python中。实际上,这个任务有一个很大的问题,我尝试使用selenium:

代码语言:javascript
复制
selenium.webdriver.common.keys import Keys
browser = webdriver.Chrome('/Users/davidabramyan/Downloads/chromedriver 3')
browser = browser.get('https://fred.stlouisfed.org/series/A191RI1A225NBEA')
elm = browser.find_element_by_link_text('Download')
browser.implicitly_wait(5)
elm.click()

并使用BeautifulSoup:

代码语言:javascript
复制
response = urllib.request.urlopen(url)
return response.read()

def parse(html):
soup = BeautifulSoup(html, 'lxml')
table = soup.find('span', class_='pull-right col-xs-1')
rows = table.find('fg-download-menu')
print(table.prettify())

def main():
parse(get_html('https://fred.stlouisfed.org/series/A191RI1A225NBEA#0'))

if __name__ == '__main__':
main()

但不起作用。我认为美丽的汤更好,但在那里我不知道怎么做。你能帮我一下吗?提前谢谢你!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-05 23:32:53

您不能使用BeautifulSoup,因为下载"CSV (数据)“的url是由ajax生成的

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait

browser = webdriver.Chrome('/Users/davidabramyan/Downloads/chromedriver 3')
# make sure above is chromedriver executable path not directory
wait = WebDriverWait(browser, 10)
browser.get('https://fred.stlouisfed.org/series/A191RI1A225NBEA')

dlButton = browser.find_element_by_id("download-button")
dlButton.click()
wait.until(lambda driver: browser.execute_script("return $('#download-data-csv').attr('href') != '#'"))
dlButton = browser.find_element_by_id("download-data-csv")
dlButton.click()

# get url to download with python
# csv_download_url = dlButton.get_attribute('href')
# csv_file = urllib2.urlopen(download)
# ....
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53163021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档