簡體   English   中英

使用 BeautifulSoup 抓取數據

[英]Scraping data using BeautifulSoup

我正在嘗試從該站點將數據刮到字典中,

from bs4 import BeautifulSoup 
import requests 
from pprint import pprint

page = requests.get('https://webscraper.io/') 
soup = BeautifulSoup(page.text, "lxml")

info = []
for x in range(1,7):
    items = soup.findAll("div",{"class":f"info{x}"})
    info.append(items)

但是,HTML 標記不會被刪除。

像這樣的東西可能有用嗎? (用您的實際請求 URL 替換 webscraper.io url;此外,您仍然需要清除輸出中的 \\n 字符):

from bs4 import BeautifulSoup 
import requests 
from pprint import pprint

page = requests.get('https://webscraper.io/') 
soup = BeautifulSoup(page.text, "lxml")

info = []
for x in range(1,7):
    items = soup.findAll("div",{"class":f"info{x}"})
    info += [item.text for item in items]

即 item.text,並將結果數組與 info 連接起來

您需要使用.text 然后要按照你想要的方式進行,需要做一些字符串操作。

from bs4 import BeautifulSoup 
import requests 
from pprint import pprint

url = 'https://webscraper.io/'
page = requests.get(url) 
soup = BeautifulSoup(page.text, "lxml")


info = []
for x in range(1,7):
    item = soup.find("div",{"class":"info%s" %x}).text.strip().replace('\n',': ')
    info.append(item)

info = '\n'.join(info)
print (info)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM