从单个属性提取多个文本数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从单个属性提取多个文本数据相关的知识,希望对你有一定的参考价值。

我正在尝试从单个选择器的单个属性中提取一些数据字段。我的意思是,我要抓取的所有信息都包含在网站的某些部分中,我可以通过这种方式获得:

response.css('td::attr(onclick)').get()

当我运行它时,我收到:

handler(this, "HANDLE", "asdf":"5777","zxcv":"754401863","hjkl":"666","tyui":"277371661","name":"lolol","something":"someth1ng","type":"animal","genre":"javasux");return false;'

并且假设我要创建的Scrapy Items具有字段a,b和c,其中我希望a为上面摘录(666)的“ hjkl”的值,b为“名称”的值“(哈哈),c为” asdf“(5777)的值。

我应该在scrapper /项目的哪个位置包含执行此操作的逻辑?因为我很遗憾地认为我无法使用选择器从诸如asdf的这些字段中“获取”值,所以我不得不使用项目加载器/项目处理器,对吗?而且我认为实际选择必须使用regexp完成吗?我问是因为在这个特定的项目中,抓取一个站点相对简单,但是我要经历这些站点,而正则表达式从我的理解来看并不太快。

答案

是的,我认为正则表达式将是更简单的解决方案,最终它只是一个长字符串,因此您也可以对其进行清理以仅获取所需的信息,也许只是获得像字典和[C0 ]。

另一种方法是使用javascript解析器,因为这是您在该字符串中所拥有的。您可以使用json

以上是关于从单个属性提取多个文本数据的主要内容,如果未能解决你的问题,请参考以下文章

Apache Flume - 由多个使用者从单个消息队列中提取数据

数据框:从单个 ID 中提取多个父级并计算出现次数

BERT - 从多个输出与单个输出中提取 CLS 嵌入

从单个df中提取列信息并输入到标识符需要重新映射的多个dfs

从提取多个值的列中查询单个值

如何使用 Python 从多个文本文件中提取数据到 Excel? (每张纸一个文件的数据)