소개 및 요청 라이브러리는 타사 라이브러리를 처리하는 간단한 HTTP 요청입니다
웹 페이지를 얻을 수있는 가장 일반적인 방법은 () 얻을, 기본적인 사용은 다음이다
라이브러리를 얻고 문자열로 변환하는 HTML 페이지 요청을 사용하면, 우리가 사용하는 HTML 페이지 형식이 HTML 구문 분석 및 XML 및 처리를위한 beautifulsoup4 라이브러리 인 더 구문 분석 할 필요가
다음 코드는 바이 정보 간단한 정보 출력 인터페이스를 바이 크롤링
수입 요청 에서 BS4의 수입 BeautifulSoup로 R = requests.get ( ' http://www.baidu.com ' ) r.encoding = 없음 결과 = r.text을 BS = BeautifulSoup로 (그 결과, ' html.parser ' ) 인쇄 (bs.title) 인쇄 (bs.title.text)
수입 요청 에서 BS4의 수입 BeautifulSoup로 # ( "gbk'codec 수없는 문자 인코딩 또는 깨진 출력 UnicodeEncodeError) 기록 코드 정보는 바람직하게는 벨트를 크롤링 왜곡 현상을 해결하는 데 사용 오기 IO 오기 SYS sys.stdout = io.TextIOWrapper (sys.stdout.buffer = 인코딩 ' GB18030 ' )
#을 用来防止反爬取,可以了解一下 헤더 = { " 사용자 에이전트 " : " 모질라 / 5.0 (윈도우, U, 윈도우 NT 5.1;에서 zh-CN, RV : 1.9.1.6) " , " 승인 " : " text / html과, 응용 프로그램 / XHTML + XML, 응용 프로그램 / XML, Q = 0.9, * / *; q를 = 0.8 " , " 용납하는 언어 " : " EN-US " , " 연결 " : "연결 유지 " , " 수락 문자셋 " : " GB2312, UTF-8, Q = 0.7 *; Q = 0.7 " }
# 获取51job网站的基本信息 R = requests.get ( ' https://search.51job.com/list/000000,000000,0000,00,9,99,python,2,1.html?lang=c&stype= 및 postchannel = 0000 workyear = 99 cotype = 99 degreefrom = 99 jobterm = 99 companysize = 99 providesalary = 99 lonlat = 0 % 2C0 및 반경 = -1 ord_field = 0 confirmdate = 9 fromType = dibiaoid = 0 어드레스 = 라인 = specialarea = 00 행 = 복지 = ' ) r.encoding = r.apparent_encoding 결과 = r.text을 BS = BeautifulSoup로 (그 결과, ' html.parser ' ) 인쇄 (bs.prettify ()) U1 = bs.find_all ( ' U1 ' , 바인드합니다 = { ' 클래스 ' : ' item_con_list ' }) # 코드의이 부분은 파이썬 경력에 대한 51job 웹 사이트 지불에 대한 우리의 크롤링의 목표입니다 인쇄 (렌 (U1)) 리 = bs.find_all ( ' 범위 ' , 바인드합니다 = { ' 클래스 ' : ' T4 ' }) 에 대한 L 의 리튬 : 인쇄 (l.text)
위의 코드는 51job의 웹 사이트에 급여와 관련된 직업 파이썬를 크롤링