所以基本上我已经尝试了许多方法来下载此文件。我有Python 和wget实现。而且真的在这个时候可以少一点我可以工作的。使用Python下载文件或使用身份验证Wget
两者都做同样的事情...他们下载网页,而不是我想下载的文件。然而,当我发布提供给Firefox的确切网址时,它会立即提示我下载它。
需要采取什么措施:(?即使SSL是搞砸了就可以了) 1.连接到网站 2.验证自己 3.点击第一个链接,该链接重定向到一个下载文件 4.下载文件
首先我的Python代码:
import httplib2
import urllib2
from BeautifulSoup import BeautifulSoup, SoupStrainer
http = httplib2.Http()
http.add_credentials('username', 'password')
status, response = http.request('https://traveler.pha.phila.gov:8443/servlet/traveler')
counter = 0
Androidlink = ''
Windowslink = ''
Iphonelink = ''
for link in BeautifulSoup(response, parseOnlyThese=SoupStrainer('a')):
if link.has_key('href'):
if counter == 2:
Iphonelink = link['href']
counter = counter + 1
if counter == 1:
Windowslink = link['href']
counter = counter + 1
if counter == 0:
Androidlink = link['href']
counter = counter + 1
url = 'https://traveler.pha.phila.gov:8443' + Androidlink
print url
import requests
from requests.auth import HTTPDigestAuth
r = requests.get(url,verify=False, auth=HTTPDigestAuth('username', 'password'))
print len(r.content)
其次,我的Wget的代码,只要下载该网站的HTML。又名不是我想要的
wget --no-check-certificate "https://traveler.pha.phila.gov:8443/servlet/traveler?action=GET&deviceType=700&address=https%3A%2F%2Ftraveler.pha.phila.gov%3A8443%2Fservlet%2Ftraveler&userId=desantj&redirectURL=%2Ftraveler%2FLotusTraveler%2Fandroid%2FLotusTraveler.apk" --http-user=username --http-passwd=password
如果我能得到任何一方的中检索该文件(APK文件),我会喜出望外,因为我很容易地浪费了6个多小时打磨这个
注的用户名和密码被隐藏出于安全原因