중화사전망 - 자전 검색 - 파이썬 웹 크롤러를 사용하여 okcoin 의 과거 데이터를 얻으려면 어떻게 해야 합니까?
파이썬 웹 크롤러를 사용하여 okcoin 의 과거 데이터를 얻으려면 어떻게 해야 합니까?
먼저 사진을 다운로드할 전체 페이지 정보를 얻을 수 있습니다.
Getjpg.py
# 인코딩 =utf-8
Urllib 가져오기
Def getHtml(url):
페이지 = urllib.urlopen (URL)
Html = page.read ()
Html 로 돌아가기
Html 인쇄
Urllib 모듈은 웹 페이지에서 데이터를 읽는 인터페이스를 제공합니다. 로컬 파일을 읽는 것처럼 www 와 FTP 에서 데이터를 읽을 수 있습니다. 먼저 getHtml () 함수를 정의합니다.
웹 사이트. URL () 메서드는 URL 주소를 여는 데 사용됩니다.
Read () 메서드는 URL 에서 데이터를 읽고, getHtml () 함수에 URL 을 전달하고, 전체 페이지를 다운로드하는 데 사용됩니다. 실행 프로그램은 전체 웹 페이지를 인쇄합니다.
둘째, 페이지에서 필요한 데이터를 필터링합니다
파이썬은 매우 강력한 정규식을 제공합니다. 먼저 파이썬 정규식을 알아야 합니다.
만약 우리가 바이두 스티커에서 아주 아름다운 벽지를 발견했다면, 이전 단락의 도구를 좀 볼 수 있을 것이다. 그림 주소를 찾았습니다 (예: src = "/70 cf ying qfm 2e88 ium _ a/forum ... jpg" pic _ ext = "JPEG"
코드를 다음과 같이 수정합니다.
수입 re
Urllib 가져오기
Def getHtml(url):
페이지 = urllib.urlopen (URL)
Html = page.read ()
Html 로 돌아가기
Def getImg(html):
Reg = r'src= "(. +? \.jpg)" pic_ext'
Imgre = 재컴파일 (reg)
Imglist = re.findall(imgre, html)
Imglist 로 돌아가기
Getimg 인쇄 (html)
또한 페이지 전체에서 필요한 그림 연결을 필터링하는 getImg () 함수도 만들었습니다. Re 모듈에는 주로 정규 표현식이 포함되어 있습니다.
Re.pile () 은 정규식을 정규식 객체로 컴파일합니다.
Re.findall () 메서드는 imgre (정규식) 가 포함된 html 의 데이터를 읽습니다.
스크립트를 실행하면 전체 페이지에 포함된 그림의 URL 주소를 얻을 수 있습니다.
셋째, 페이지를 필터링한 데이터를 로컬로 저장합니다
For 루프를 통해 필터링된 이미지 주소를 반복하고 로컬에 저장합니다. 코드는 다음과 같습니다.
# 인코딩 =utf-8
Urllib 가져오기
수입 re
Def getHtml(url):
페이지 = urllib.urlopen (URL)
Html = page.read ()
Html 로 돌아가기
Def getImg(html):
Reg = r'src= "(. +? \.jpg)" pic_ext'
Imgre = 재컴파일 (reg)
Imglist = re.findall(imgre, html)
X = 0
Imglist 에서 imgurl 의 경우:
Urllib.urlretrieve(imgurl,' %s.jpg'% x')
X+= 1
Getimg 인쇄 (html)
여기서 핵심은 urllib.urlretrieve () 메서드를 사용하여 원격 데이터를 직접 로컬로 다운로드하는 것입니다.
For 루프를 통해 얻은 이미지 연결을 순회합니다. 이미지의 파일 이름을 좀 더 규범적으로 보이기 위해 x 변수에 1 을 추가하여 이름을 변경했습니다. 저장 위치는 기본적으로 프로그램이 저장되는 디렉토리입니다.
프로그램을 실행한 후, 너는 디렉터리에서 다운로드한 파일을 볼 수 있을 것이다. 전재는 참고용으로만 제공된다.