首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >摘录网页上突出显示的文本

摘录网页上突出显示的文本
EN

Stack Overflow用户
提问于 2018-08-31 16:43:18
回答 3查看 1.1K关注 0票数 1

我想知道是否有从网页上的段落中提取突出显示的文本。

经过长时间的搜索,我遇到了这个模块,https://python-docx.readthedocs.io/en/latest/,但它的文档。

例如,假设我们有以下段落:

"Stack Overflow是由杰夫·阿特伍德( Jeff Atwood )和乔尔·斯波斯基( Joel Spolsky )于2008年创建的、由Stack Exchange的旗舰网站私人所有的网站。它是为了更开放地取代早期的问答网站,比如,该网站的名字是由Atwood的热门编程博客Coding Horror的读者在2008年4月投票选出的。它提供了关于计算机编程中广泛主题的问答功能。“

现在,在上面的一段中,让我们说粗体字串是我突出显示的,我想提取加输出的突出显示的单词。我能在网页上做这个吗。

因此,其产出应该是:私人网站;专家交流;广泛的主题。

EN

回答 3

Stack Overflow用户

发布于 2018-08-31 17:29:14

我要做的是使用tinyreq,通过身体搜索标签。能够做到这一点是有用的:

代码语言:javascript
运行
复制
const req = require('tinyreq');

const start = '<mark>'; const end = '</mark>';
// const start = '<b>'; const end = '</b>';
// const start = '<strong>'; const end = '</strong>';

req('https://en.wikipedia.org/wiki/Language_code', (err, body) => {
    if (err) { return console.log(err); }
    body.split('<body')[1].split(start).map(textBold => {
        if(textBold.includes(end)){
            console.log(textBold.split(end)[0]);
            console.log('────────────────────');
        }
    });
});
票数 0
EN

Stack Overflow用户

发布于 2018-08-31 17:49:33

我认为这一解决方案将更好地应用于您正在寻找的:

代码语言:javascript
运行
复制
const req = require('tinyreq');

req('http://www.treepad.com/docs/tpp/manual/documents/127A901E40BA449B3C4359B720246BA3B2E67362.html', (err, body) => {
    if (err) { return console.log(err); }
    body.split('<body')[1].split('<span').map(textBold => {
        if(textBold.includes('background-color:')){
            console.log(textBold.split('>')[1].split('</SPAN')[0]);
            console.log('────────────────────');
        }
    });
});

树突出显示文本示例链接的输出

代码语言:javascript
运行
复制
white against a dark blue
────────────────────
background
────────────────────
black against a gray background
────────────────────
票数 0
EN

Stack Overflow用户

发布于 2018-08-31 17:57:32

您只需使用bs4就可以做到这一点。首先,确保已经安装了bs4和请求,如果要安装它们,只需运行以下两个命令

代码语言:javascript
运行
复制
pip install requests
pip install bs4

然后,您必须编写这样一个python脚本

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

page_url = 'http://127.0.0.1:1234'
source_code = requests.get(page_url)
plain_text = source_code.text
soup = BeautifulSoup(plain_text, features="lxml")
for bold in soup.findAll('b'):
    print(bold.contents)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52119710

复制
相关文章

相似问题

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