2013-08-29 15 views
1

이것은 아마도 매우 간단한 작업이지만 어떤 도움도 찾을 수 없습니다. 웹 사이트 www.xyz.com/somestuff/ID가 있습니다. 정보가 필요한 ID 목록이 있습니다. 나는 하나의 사이트로 이동하고 간단한 양식 ID_whatever_the_default_save_name_is 특정 폴더에서 각 ID에 대한 (전체) 웹 페이지를 다운로드하는 간단한 스크립트를 가지고 있었으면 좋겠다.웹 페이지를 저장하는 파이썬

나를 위해 이렇게 간단한 파이썬 스크립트를 실행할 수 있습니까? 나는 그것을 수작업으로 할 수 있으며 75 페이지 밖에 안되지만, 이것을 사용하여 앞으로 이와 같은 일을하는 법을 배우기를 희망했다.

+0

아래 해결 방법 중 어떤 것이 효과가 있습니까? – Joe

답변

0

Mechanize은 웹을 파이썬으로 크롤링하기위한 훌륭한 패키지입니다. 당신의 문제에 대한 간단한 예는 다음과 같습니다

import mechanize 

br = mechanize.Browser() 
response = br.open("www.xyz.com/somestuff/ID") 
print response 

이 단순히 URL을 잡고 서버의 응답을 인쇄합니다.

+0

시작 주셔서 감사합니다. 그러나 잘못된 구문이 표시됩니다. 어떻게 ID 목록을로드하여 'ID_webpage'형식으로 같은 폴더에 저장하도록 할 수 있습니까? – CJ12

+0

import 문에서 구문 오류가 발생했다고 가정합니다. 기계화가 파이썬에서 기본값으로 설정되지 않았기 때문입니다. 나머지 부분에 관해서는 일반적으로 지금까지 무엇을했는지 보여줄 수있는 코드를 제공하지 않고 도움을 청하기 위해 눈살을 찌푸리게됩니다. 그래서 나는 단지 일반적인 개요를 제공 할 것입니다. ID로 목록을 저장하고 해당 목록을 반복하고 위의 코드를 루프에 넣으면서 열린 줄의 'ID'를 루프에서 반복되는 현재 ID로 변경 한 다음 해당 응답을 파일에 씁니다. – iCanHasFay

+0

고마워, 나는 기계화를 살펴볼 것이다. 내 질문의 큰 부분은 완전한 웹 페이지로 웹 페이지를 저장하는 것입니다. 이것은 그렇게 보이지 않습니다. 그것이 코드 편집일까요? – CJ12

0

이것은 파이썬에서 urllib 모듈을 사용하여 간단히 수행 할 수 있습니다.

import urllib.request 

url = 'www.xyz.com/somestuff/ID' 
req = urllib.request.Request(url) 
page = urllib.request.urlopen(req) 
src = page.readall() 
print(src) 

URLLIB 모듈에 대한 추가 정보를 원하시면 ->http://docs.python.org/3.3/library/urllib.html

+0

감사합니다. 오프라인으로 볼 수있는 완전한 웹 페이지 html 파일로 저장되도록 최종 제품을 찾고 있습니다. 또한 ID 목록을 제공하고 같은 위치에 ID_default_save_name 파일 이름으로 저장하려고합니다. – CJ12

0

당신이 웹 사이트에 대한 바로 HTML 코드를 원하십니까 : 여기에 파이썬 3의 간단한 예입니다? 그렇다면 호스트 사이트에서 url 변수를 만들고 페이지 번호를 추가하십시오. 예를 들면 다음과 같습니다. http://www.notalwaysright.com

import urllib.request 

url = "http://www.notalwaysright.com/page/" 

for x in range(1, 71): 
    newurl = url + x 
    response = urllib.request.urlopen(newurl) 
    with open("Page/" + x, "a") as p: 
     p.writelines(reponse.read()) 
관련 문제