웹 데이터 가져오기

3739 단어 Python

웹 데이터 가져오기


Python에서 라이브러리 리퀘스트, 해석 라이브러리 Beautiful Soup을 통해 정보를 얻고 여기서 Yahoo(https://www.yahoo.com/)의 예, 홈 TrendingNow)의 내용을 얻습니다.
1) 먼저 라이브러리 requests, BeautifulSoup 가져오기
2)requests.get (url) 를 사용하여 웹 페이지의 모든 내용을 가져옵니다.java
requests.get(url)
3) 가져온 웹 페이지의 내용을 BeautifulSoup 유형으로 변환java
bs = BeautifulSoup(result, 'html.parser')
4) Yahoo(https://www.yahoo.com/)의 TrendingNow 영역을 해석합니다. 다른 내용과 달리 해석하고 발견한class 속성이 유일합니다. 이 속성을 사용하여 값을 얻습니다.
find_all(class_='XXX) 방법으로 값을 가져옵니다.
※ class는python의 키워드이기 때문에class_태그 요소의 표시 속성을 수정합니다.
기타 태그, 속성은 직접 사용할 수 있습니다.
예:python
find_all('a')
find_all(id='link2')
find_all(["a", "span"])
목록 상자에서 이 형식은 항목'없음'에 해당합니다.
이미지:

소스 코드

# ライブラリ
import requests
# 解析ライブラリ
from bs4 import BeautifulSoup

# ウェブページurl
r = requests.get("https://www.yahoo.com/")
# タイプ
result = r.text
# BeautifulSoupタイプに変換
bs = BeautifulSoup(result, 'html.parser')
print("データ:")
# class属性を使って値を取得します
data1 = bs.find_all(class_='Mstart(-2px) C($c-fuji-grape-jelly):h C($c-fuji-inkwell) Fz(12px) Fw(600)')
# ループ出力
for i in data1:
    print(i.text)

실행 결과

C:\>"C:\Program Files\Python37\python.exe" D:/WeChat_Robot/CatchData/catchdata.py
データ:
 Carey Mulligan
 Hideki Matsuyama
 Kid Cudi
 Prince Phillip
 Biglietti da visita
 Antivirus Kaspersky
 Forni elettrici
 Camicie uomo
 Mascherine online
 Spesa online

Process finished with exit code 0

좋은 웹페이지 즐겨찾기