[英]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.