我正在尝试进行一些网页封装,因此需要从网页中提取关键字。我正在尝试使用page_soup.findAll()提取它,但是我不知道在()之间插入什么来提取我需要的东西。
页面代码如下:
var kv = {"seccion": "otros","nivel": "home","nota": "","id_nota": "","tipo": "noticias","keywords" : "IMPUESTOS, SII, EXCEDENTES ISAPRES, INCENDIOS, COLUSION CONFORT, COMPENSACION, PERMISOS DE CIRCULACION, REVISION TECNICA"};
我需要这些数据:
“ IMPUESTOS,SII超越了ISAPRES,INCEDENOS,凝聚力,赔偿,补偿,PERMISOS DE CIRCULACION,修订版TECNICA”
谢谢
答案 0 :(得分:0)
这不是HTML
,而是JavaScript
,因此findaAll()
对此没有用。
您将其作为字符串使用,因此请使用字符串函数来获取它-即。切片[start:end]
,split()
,replace()
等
或者您可以从字符串var kv =
和;
中删除,您将拥有JSON字符串,可以使用模块json
将其转换为Python的字典,然后可以从字典中获取它- dictionary["keywords"]
text = 'var kv = {"seccion": "otros","nivel": "home","nota": "","id_nota": "","tipo": "noticias","keywords" : "IMPUESTOS, SII, EXCEDENTES ISAPRES, INCENDIOS, COLUSION CONFORT, COMPENSACION, PERMISOS DE CIRCULACION, REVISION TECNICA"};'
text = text[9:-1] # remove `var kv = ` and `;`
import json
d = json.loads(text)
print(d['keywords'])