如何在Python中打开Interactive Brokers的TWS

时间:2015-06-24 16:49:36

标签: python-2.7 web-scraping

指向最新版TWS的链接是here

当我在观看“网络”流量(Ctrl + Shift + Q)的同时在Firefox中打开链接时,它似乎向

显示了GET请求
https://www.interactivebrokers.com/java/classes/latest.jnlp?counter=0.9639924327729598

(计数器设置为随机数)。但是,以下代码返回一个HTML网页;而不是'latest.jnlp'文件:

import requests
import random

url = 'https://www.interactivebrokers.com/java/classes/latest.jnlp?counter=' + str(random.random())
r = requests.get(url, stream=True)
print r.content

如何下​​载实际的latest.jnlp文件并保存?

1 个答案:

答案 0 :(得分:1)

下面的两个函数说明了下载文件的两种不同方法:

import random
import urllib
import urllib2

url = 'https://www.interactivebrokers.com/java/classes/latest.jnlp?counter=' + str(random.random())

def download_file_1(url):
    urllib.urlretrieve(url + ".jnlp", "latest.jnlp")

def download_file_2(url):
    jnlpfile = urllib2.urlopen(url + ".jnlp")
    output = open('test.jnlp','wb')
    output.write(jnlpfile.read())
    output.close()

调用这两个函数会产生相同的结果:文件只需下载并保存到当前工作目录中,文件名称指定为" latest.jnlp"和" test.jnlp"。由于您没有指定必须使用请求库,因此我决定使用urllib和urllib2。

希望这就是你要找的东西!