我正在创建一个程序,它将从Web服务器下载.jar(java)文件,方法是读取同一游戏/应用程序的.jad文件中指定的URL.我正在使用Python 3.2.1
我设法从JAD文件中提取JAR文件的URL(每个JAD文件都包含JAR文件的URL),但是您可以想象,提取的值是type()字符串.
这是相关的功能:
def downloadFile(URL=None):
import httplib2
h = httplib2.Http(".cache")
resp, content = h.request(URL, "GET")
return content
downloadFile(URL_from_file)
Run Code Online (Sandbox Code Playgroud)
但是我总是得到一个错误,说上面函数中的类型必须是字节,而不是字符串.我尝试过使用URL.encode('utf-8'),还有字节(URL,encoding ='utf-8'),但我总是得到相同或类似的错误.
所以基本上我的问题是当URL存储在字符串类型中时如何从服务器下载文件?
我正在尝试使用python自动下载历史股票数据.我尝试打开的URL以CSV文件响应,但我无法使用urllib2打开.我之前在几个问题中已经尝试更改用户代理,我甚至尝试接受响应cookie,没有运气.你能帮忙吗?
注意:同样的方法适用于雅虎财经.
码:
import urllib2,cookielib
site= "http://www.nseindia.com/live_market/dynaContent/live_watch/get_quote/getHistoricalData.jsp?symbol=JPASSOCIAT&fromDate=1-JAN-2012&toDate=1-AUG-2012&datePeriod=unselected&hiddDwnld=true"
hdr = {'User-Agent':'Mozilla/5.0'}
req = urllib2.Request(site,headers=hdr)
page = urllib2.urlopen(req)
Run Code Online (Sandbox Code Playgroud)
错误
文件"C:\ Python27\lib\urllib2.py",第527行,在http_error_default中引发HTTPError(req.get_full_url(),代码,msg,hdrs,fp)urllib2.HTTPError:HTTP错误403:禁止
谢谢你的协助