簡體   English   中英

Python/Requets/Beautiful Soup 基本刮痧

[英]Python/Requets/Beautiful Soup Basic Scrape

希望你們一切都好。 我今天早些時候寫了一個 HTML 站點的基本 webscrape,沿着類似的路線。 我正在學習教程,正如您可以通過我的代碼看到的那樣,我對 Python 編碼有點陌生。 希望得到一些關於抓取這個網站的指導。

正如您在注釋掉的代碼中看到的那樣,

#print(results.prettify())

我能夠成功地打印出網頁的全部內容。 然而,我想做的是減少我正在打印的內容,以便我只是打印出相關的內容。 頁面上有很多我不想要的內容,我想按摩一下。 有沒有人對為什么代碼底部的 for 循環沒有按順序抓取 HTML 的 xlmins 單元中的段落並打印出來有任何想法? 請查看以下代碼了解更多信息。

import requests
from bs4 import BeautifulSoup

URL = "http://www.gutenberg.org/files/7142/7142-h/7142-h.htm"
page = requests.get(URL)

#we're going to create an object in Beautiful soup that will scrape it.
soup = BeautifulSoup(page.content, 'html.parser')
#this line of code takes

results = soup.find(xmlns='http://www.w3.org/1999/xhtml')
#print(results.prettify())
job_elems = results.find_all('p', xlmins="http://www.w3.org/1999/xhtml")

for job in job_elems:
    paragraph = job.find("p", xlmins='http://www.w3.org/1999/xhtml')
    print(paragraph.text.strip)

沒有<p>標簽包含屬性xlmins='http://www.w3.org/1999/xhtml' ,只有頂部 HTML 標簽包含。 刪除該部分,您將獲得所有段落。

job_elems = results.find_all('p')

for job in job_elems:
    print(job.text.strip())

暫無
暫無

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

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