파 이 썬 파충류 실전 (3) - 콩짜개 오 르 기 음악 Top 250 데이터 (초 상세)
3970 단어 Python 튜 토리 얼
우선 지난 두 편의 파충류 실전 글 을 떠 올 려 보 자.
첫 번 째 편: requests 와 bs4, 그리고 일부 웹 페이지 의 기본 동작 에 대해 이야기 했다.
파 이 썬 파충류 실전 (1) - '집 천하' 전세 정보 얻 기 (초 상세)
정규 표현 식 - re 모듈 사용
파 이 썬 파충류 실전 (2) - 소설 '두 라 대륙 3 용왕 전설' (초 상세)
오늘 우 리 는 lxml 라 이브 러 리 와 xpath 문법 으로 파충류 실전 을 한다.
1. lxml 라 이브 러 리 설치
window: 직접 pip 로 설치 합 니 다. pip 의 설치 경 로 를 찾 아야 합 니 다.
pip install lxml
* * 2. * * xpath 문법
xpath 문법 은 아 닙 니 다. 아래 주 소 를 참고 하 십시오.
http://www.w3school.com.cn/xpath/index.asp
파충류 실전
우선 상단 효과 도:
오늘 은 '콩짜개 음악 TOP 250 데이터' 를 한번 올 려 보도 록 하 겠 습 니 다.
1. 웹 페이지 전환 규칙 관찰
https://music.douban.com/top250?start=0
https://music.douban.com/top250?start=25
https://music.douban.com/top250?start=50
그 중에서 우 리 는 이미 규칙 을 발견 했다.
2. 콩짜개 음악의 제목, 정보, 성 평 파충류 의 전체 코드 는 다음 과 같다.
import requests
from lxml import etree
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36'}
list=[1]
def getResult():
urls=["https://music.douban.com/top250?start={}".format(str(i)) for i in range(0,250,25)]
for url in urls:
data = requests.get(url, headers=headers)
html = etree.HTML(data.text)
#
count = html.xpath("//tr[@class='item']")
for info in count:
title = info.xpath("normalize-space(td[2]/div/a/text())")#
list[0]=title # title normalize-space , result , list
star = info.xpath("td[2]/div/div/span[2]/text()") #
brief_introduction = info.xpath("td[2]/div/p//text()") #
# result
for star, title, brief_introduction in zip(star, list, brief_introduction):
result = {
"title": title,
"star": star,
"brief_introduction": brief_introduction,
}
print(result)
if __name__ == '__main__':
getResult()
분석:
막 입문 한 친구 에 게 도움 이 되 었 으 면 좋 겠 습 니 다!
여러분 이 저의 두 개의 위 챗 공식 번 호 를 주목 해 주신 것 을 환영 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python 파충류 입문 - 폼 제출 및 시 뮬 레이 션 로그 인현재 requests 는 form 폼 형식, json 형식 등 다양한 형식 으로 post 요청 을 할 수 있 습 니 다.오늘 은 주로 양식 형식 으로 예 를 들 면: 제출 폼 의 필드 를 조회 할 수 있 는 두 가지...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.