我正在尝试访问this page上提供的“收益率曲线数据”。它有单选按钮,单击“提交”后会生成一个CSV文件,我希望从中获取数据。我希望从“检索所有数据”选项中获取数据。我想将此数据转换为dataframe
。但是,我不知道如何将result
<addinfourl at 149347464L whose fp = <socket._fileobject object at 0x0000000008E55660>>
转换为dataframe
。
import urllib, urllib2
import csv
import urllib2
import StringIO
import pandas as pd
my_url = 'http://www.bankofcanada.ca/rates/interest-rates/bond-yield-curves/'
data = urllib.urlencode({'lastchange': 'all'})
request = urllib2.Request(my_url, data)
result = urllib2.urlopen(request)
print result #Output: <addinfourl at 149347464L whose fp = <socket._fileobject object at 0x0000000008E55660>>
编辑:关于Kevin Zhao的问题,部分输出如下所示。另外,我使用了与this post的答案中给出的相同的想法。但是,在提交表单时捕获数据似乎是个问题:
!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
答案 0 :(得分:0)
谢谢!所以,如果我理解正确,你想打开一个页面,点击页面上的一个按钮,然后下载一个文件?如果是这种情况,使用selenium可能比urllib2更好,请参阅此链接以获取有关如何使用它的信息:
http://www.reddit.com/r/Python/comments/1nk0r4/python_library_for_automating_interaction_with_a/