【问题标题】:Framework in Python for extracting key information from websites用于从网站中提取关键信息的 Python 框架
【发布时间】:2022-01-12 20:01:45
【问题描述】:

我正在寻找 Python 框架来从数千个不同的网站中提取关键信息 - 例如“办公室位置”、“CEO”等。理想情况下,该脚本将读取网站 url,识别一些“关键术语”例如“位置”、“办公室”、“团队成员”等并打印相应的指标。

我在使用 Scrapy 时唯一相关的经验是提取遵循特定网页上某种模式的信息(即从 Wikipedia 中提取表格),但不确定 Scrapy 或 BeautifulSoup 是否适用于此类项目。想知道 Scrapy 是否是我最好的选择,如果是,那么用于此类项目的正确语法是什么。我已经尝试了一些变体

import scrapy
from bs4 import BeautifulSoup
import urllib


class OurfirstbotSpider(scrapy.Spider):
    name = 'ourfirstbot'
    start_urls = [
        'https://en.wikipedia.org/wiki/List_of_common_misconceptions',
    ]

    def parse(self, response):
        #yield response
        headings = response.css('.mw-headline').extract()       
        datas = response.css('ul').extract()       

        
        for item in zip(headings, datas):
            all_items = {
                'headings' : BeautifulSoup(item[0]).text,
                'datas' : BeautifulSoup(item[1]).text,


            }


            yield all_items

无济于事,因为每个站点都有不同的布局,并且没有一个遵循特定的模式。任何帮助将不胜感激。

【问题讨论】:

    标签: python web-scraping beautifulsoup scrapy


    【解决方案1】:

    我认为您对“关键信息”的定义并不准确。您如何评估此类程序/模型的性能?从网页中抓取文本后,您可以将其提供给经过微调的NER 以提取此类信息。

    例如,给定一个文本,this NER model 以大约 95% 的准确率返回其中的这四个实体:位置 (LOC)、组织 (ORG)、人员 (PER) 和杂项 (MISC)。

    斯坦福 NLP 小组的This model 似乎正在识别更多类型的实体:

    添加 regexner 注释器并使用提供的 RegexNER 模式文件增加了对细粒度和附加实体类 EMAIL、URL、CITY、STATE_OR_PROVINCE、COUNTRY、NATIONALITY、RELIGION、(作业)TITLE、IDEOLOGY、CRIMINAL_CHARGE、CAUSE_OF_DEATH 的支持, (Twitter 等)HANDLE(12 个类),共 24 个类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-07
      • 2010-09-24
      • 2018-06-18
      • 1970-01-01
      • 2013-09-12
      • 1970-01-01
      • 2011-12-26
      相关资源
      最近更新 更多