이 기사의 내용은 Python이 Douban 영화 데이터를 크롤링하고 값 xpath 및 lxml 모듈(코드)을 추출하는 내용입니다. 필요한 참조 값이 있으면 도움이 될 것입니다.
도구: Python 3.6.5, PyCharm 개발 도구, Windows 10 운영 체제, Google Chrome
목적: Douban 영화 순위에서 영화의 제목, 링크 주소, 사진, 리뷰어 수, 평가 등을 크롤링합니다.
웹사이트: https://movie.douban.com/chart
문법 포인트:
xpath 구문:
Google Chrome용 xpath 도우미 플러그인 설치: 요소에서 데이터를 찾는 데 도움을 주세요
1. nodes (labels)
(1), /html/head/meta: html
(2) 아래의 모든 메타 태그를 선택할 수 있음, //li: 현재 페이지의 모든 li 태그
(3 ), /html/head//link: head 아래의 모든 링크 태그
2, //: 모든 노드에서 선택 가능
(1), //li: 현재 페이지의 모든 li 태그
back Up in worth-html p[@class='feed']/ul/li, class='feed'
(2) p 아래 ul 아래에서 li를 선택하세요. a/@href: 값의 href 선택
》
아래의 모든 텍스트 예 :
lxml 구문:
1. 설치: pip install lxml 2
From lxml import etree 코드:
from lxml import etree import requests url = "https://movie.douban.com/chart" headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36" } response = requests.get(url,headers=headers) html_str = response.content.decode() #print(html_str) html = etree.HTML(html_str) print(html) #1.获取所有的电影的URL地址 #url_list = html.xpath("//div[@class='indent']/div/table//div[@class='pl2']/a/@href") #print(url_list) #2.所有图片的地址 #img_list = html.xpath("//div[@class='indent']/div/table//a[@class='nbg']/img/@src") #print(img_list) ret1 = html.xpath("//div[@class='indent']/div/table") print(ret1) for table in ret1: item = {} item["title"] = table.xpath(".//div[@class='pl2']/a/text()")[0].replace("/","").strip() item["href"] = table.xpath(".//div[@class='pl2']/a/@href")[0] item["img"] = table.xpath(".//a[@class='nbg']/img/@src")[0] item["comment_num"] = table.xpath(".//span[@class='pl']/text()")[0] item["rating_num"] = table.xpath(".//span[@class='rating_nums']/text()")[0] print(item)
작동 효과:
위 내용은 Python은 Douban 영화 데이터를 크롤링하고 xpath 및 lxml 모듈(코드) 값을 추출합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!