Python 使用BeautifulSoup解析Wikipedia中的页面时出现问题

Python 使用BeautifulSoup解析Wikipedia中的页面时出现问题,python,beautifulsoup,wikipedia,Python,Beautifulsoup,Wikipedia,我有一个非常简单的测试脚本,用于从Wikipedia获取一篇文章,并获取页面中出现的文本的第一段(即摘要) 这是: from bs4 import BeautifulSoup import urllib2 url = "https://en.wikipedia.org/wiki/Vicia_faba" print url source = urllib2.urlopen(url) soup = BeautifulSoup(source, 'lxml') print soup summary

我有一个非常简单的测试脚本,用于从Wikipedia获取一篇文章,并获取页面中出现的文本的第一段(即
摘要

这是:

from bs4 import BeautifulSoup
import urllib2

url = "https://en.wikipedia.org/wiki/Vicia_faba" 
print url
source = urllib2.urlopen(url)
soup = BeautifulSoup(source, 'lxml')
print soup
summary = soup.find('p').getText()
print summary
解析
摘要
时,我什么也没有得到,尽管页面已成功获取并正确传递到
BeautifulSoup

这看起来是一个很简单的问题,但我无法进一步解决
BeautifulSoup
充满了诡计,但不幸的是,我不知道其中的许多


提前感谢您的任何提示或建议。

我更改了您代码中的一些内容:

Python3.x:

from bs4 import BeautifulSoup
import urllib.request



url = "https://en.wikipedia.org/wiki/Vicia_faba"
print(url)

with urllib.request.urlopen(url) as url:
    source = url.read()

soup = BeautifulSoup(source, 'lxml')
# print(soup)
# summary = soup.find('<p>').getText()
# print(summary)

for para_tag in soup.find_all('p'):
    print (para_tag.text)
输出:

蚕豆,在烹饪意义上也被称为蚕豆,蚕豆 蚕豆或蚕豆是豌豆和蚕豆中的一种开花植物 豆科植物。其来源不确定[1]:160且广泛存在 作为供人类食用的作物种植。它也被用作封面 豆荚,豆荚,豆荚较小。品种较小, 喂马或其他动物的较硬的种子称为田 豆角、豆角或扁豆。蚕豆。, 是一个公认的品种名称。[2]

有些人患有蚕豆症,一种对病毒的溶血反应 蚕豆的消费,与G6PDD有关。否则 去除外种皮的豆类可以生吃或煮熟。 在幼年植物中,外层种皮可以食用,在幼年植物中也可以食用 植物,种子荚可以食用


我在您的代码中更改了一些内容:

Python3.x:

from bs4 import BeautifulSoup
import urllib.request



url = "https://en.wikipedia.org/wiki/Vicia_faba"
print(url)

with urllib.request.urlopen(url) as url:
    source = url.read()

soup = BeautifulSoup(source, 'lxml')
# print(soup)
# summary = soup.find('<p>').getText()
# print(summary)

for para_tag in soup.find_all('p'):
    print (para_tag.text)
输出:

蚕豆,在烹饪意义上也被称为蚕豆,蚕豆 蚕豆或蚕豆是豌豆和蚕豆中的一种开花植物 豆科植物。其来源不确定[1]:160且广泛存在 作为供人类食用的作物种植。它也被用作封面 豆荚,豆荚,豆荚较小。品种较小, 喂马或其他动物的较硬的种子称为田 豆角、豆角或扁豆。蚕豆。, 是一个公认的品种名称。[2]

有些人患有蚕豆症,一种对病毒的溶血反应 蚕豆的消费,与G6PDD有关。否则 去除外种皮的豆类可以生吃或煮熟。 在幼年植物中,外层种皮可以食用,在幼年植物中也可以食用 植物,种子荚可以食用


谢谢但我只需要前两段,如何从para_tag.text中获取它们?最好不要在答案中引用这么多输出,但无论如何+1您的第一个解决方案工作正常,我已经能够通过使用一个行计数器获取感兴趣的段落。但是,编辑后的答案不是通用的,因为脚本旨在适用于从维基百科抓取的任何页面。谢谢。但我只需要前两段,如何从para_tag.text中获取它们?最好不要在答案中引用这么多输出,但无论如何+1您的第一个解决方案工作正常,我已经能够通过使用一个行计数器获取感兴趣的段落。然而,编辑后的答案不是通用的,因为该脚本旨在适用于从维基百科抓取的任何页面。