2013-08-22 2 views
0

Python 및 BeautifulSoup을 사용하여 다운로드 할 수있는 현재 미국 영어 버전의 Firefox 용 Firefox 다운로드 페이지를 긁어 내려고하고 있습니다. 파이썬 버전 2.4.3을 사용하고 있습니다.BeautifulSoup을 사용하여 현재 버전의 Firefox를 추출하십시오.

나는 가깝지만, 올바른 지침으로 나를 인도 할 수있는 몇 가지 지침을 사용할 수 있다고 생각합니다.

File "firefox-version.py", line 11 
     print version # Put a mail command here 
      ^
    SyntaxError: invalid syntax 

내가 데이터를 의심 :

<td class="download win"><a href="https://download.mozilla.org/?product=firefox- 23.0.1&amp;os=win&amp;lang=en-US" title="Download for Windows">Download</a></td> 

주석으로 줄은 오류를 출력합니다

import urllib2 
    from BeautifulSoup import BeautifulSoup 

    url = "http://www.mozilla.org/en-US/firefox/all/"; 

    page = urllib2.urlopen(url) 
    soup = BeautifulSoup(page) 

    #version = soup.find('tr', {'id': 'en-US'}).find('td', {'class': 'download   win'}.find('a', {'product': 'firefox'}) 
    version = soup.find('tr', {'id': 'en-US'}).find('td', {'class': 'download win'}) 
    print version # Put a mail command here 

주석 라인은 다음과 같은 출력 : 여기에

내 현재 코드입니다 내가 검색하는 것은 파이썬에게 반환되는 결과를 처리하도록 지시하는 방식으로 저장 될 수 없다. 에드. 필자는 find 대신 find_all을 사용하기 시작했다. 그러나 올바른 방향으로 나를 데려 가고 있는지 확신 할 수 없다. 모든 단서가 도움이 될 것입니다. 고맙습니다.

+0

구문 오류가 발생했습니다. 이러한 종류의 오류는 코드 논리와 완전히 관련이 없으며 코드가 유효한 Python이 아님을 의미합니다. 'import sys;를 실행하십시오. sys.version'을 사용하여 현재 사용중인 파이썬 버전을 확인하십시오. – Lanaru

답변

1

print version 구문은 Python 2.4에서 제대로 작동하지만 구문 오류가 발생하지 않습니다. Python 3.x에서 print version 일 때 구문 오류가 발생하기 때문에 이 실제로 인 버전인지 확인하십시오. 확실한지 확인하려면 작동 여부를 확인하십시오 (print(version)).

관련 문제