首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Beautiful汤-python从div中的特定标题中的段落元素中从网页中提取文本

如何使用Beautiful汤-python从div中的特定标题中的段落元素中从网页中提取文本
EN

Stack Overflow用户
提问于 2019-08-24 00:40:21
回答 1查看 76关注 0票数 1

基本上就是标题。以IL-6基因为例,我试图从https://www.genecards.org/cgi-bin/carddisp.pl?gene=IL6&keywords=il6的“name_of_gene基因基因摘要”下面提取段落文本。我想要做的是"IL6 (白细胞介素6)“是一个蛋白质编码基因,与IL6相关的疾病包括卡波西肉瘤和类风湿关节炎、系统性青少年,其相关途径包括IL-1家族信号通路和免疫应答IFNα/β信号通路。与此相关的基因本体论注释包括信号受体结合和生长因子活性。

我一直在尝试在蟒蛇身上使用美丽的汤4。我有一个特别的问题是,我只是不知道如何具体说明我想从网站中提取哪些文本。

代码语言:javascript
复制
from bs4 import BeautifulSoup

from urllib.request import Request, urlopen

baseURL = "https://www.genecards.org/cgi-bin/carddisp.pl?gene="
GeneToSearch = input("Gene of Interest: ")`
updatedURL = baseURL + GeneToSearch
print(updatedURL)

req = Request(updatedURL, headers={'User-Agent': 'Mozilla/5.0'})
response = urlopen(req).read()

soup = BeautifulSoup(response, 'lxml')

for tag in soup.find_all(['script', 'style']):
   tag.decompose()
soup.get_text(strip=True)
VALID_TAGS = ['div', 'p']

for tag in soup.findAll('GeneCards Summary for '+ GeneToSearch +    'Gene'):
    if tag.name not in VALID_TAGS:
        tag.replaceWith(tag.renderContents())

print(soup.text)

这只会给我网站上的每一个元素。

EN

回答 1

Stack Overflow用户

发布于 2019-08-24 01:19:20

尝试在标记之间导航,如下所示:

代码语言:javascript
复制
soup.select('.gc-subsection-header')[1].next_sibling.next_sibling.text

参考文献:美汤

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57634304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档