2013-01-24 3 views
0

기본적으로이 파일을 다운로드하는 데 여러 가지 방법을 시도했습니다. 나는 파이썬 과 wget 구현물을 가지고있다. 그리고 정말로이 시점에서 내가 일할 수있는 것을 덜 신경 쓸 수 있습니다.인증을 사용하여 Python 또는 Wget으로 파일 다운로드

두 가지 모두 똑같은 일을합니다 ... 다운로드하려는 파일이 아닌 웹 페이지를 다운로드합니다. 그러나 파이어 폭스에 제공된 정확한 URL을 게시하면 즉시 다운로드하라는 메시지가 나옵니다. 필요로하는 것은

이 발생합니다 : (? SSL은 그것을 엉망 경우에도) 1. 웹 사이트에 연결 2. 자신에게 3. 다운로드 파일 4. 다운로드로 리디렉션 첫 번째 링크를 인증하는 내 파이썬 코드를

첫째을 파일 :

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을 다운로드 할 수 있습니다. 아카하지 내가이 파일 (APK 파일) retreive 그들 중 하나를 얻을 수 있다면, 나는 내가 쉽게

참고 연삭 6 시간 이상을 낭비으로 기뻐 할 것

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 

을 원하는 사용자 이름과 암호는 보안상의 이유로

답변

1

체크 wget을 -O LotusTraveler.apk "를 은폐했다 https://traveler.pha.phila.gov:8443/servlet/traveler?action=GET &되는 DeviceType = 700 & 주소 = https % 3A % 2F % 2Ftraveler.pha.phila.gov % 3A8443 % 2Fser vlet % 2Ftraveler & UserID는 Principal = desantj & redirectURL = % 2Ftraveler % 2FLotusTraveler % 2Fandroid % 2FLotusTraveler.apk "--http 사용자 = 사용자 이름 --http-passwd를 = 암호

는 ** 편집 : 미안 해요, 난 더 나은 읽어야 . 정말 죄송합니다 .. 왜 그런지는 모르겠지만 (구글로) 비슷한/동일한 파일에 대한 수많은 다운로드 위치를 찾았습니다.

관련 문제