自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一日一技:爬蟲如何解析JavaScript Object?

開發(fā) 前端
長得很像Python的字典,又很像是JSON。但是這個(gè)格式在Python里面,無論直接當(dāng)字典解析,還是當(dāng)JSON解析,都會(huì)報(bào)錯(cuò)。

我們?cè)陂_發(fā)爬蟲的過程中,經(jīng)常發(fā)現(xiàn)有一些網(wǎng)站,會(huì)直接把數(shù)據(jù)放到HTML中的<script>標(biāo)簽里面。這些數(shù)據(jù)長得有點(diǎn)像JSON,但又有差異,如下圖所示:

圖片圖片

這種格式,我們叫做JavaScript Object。長得很像Python的字典,又很像是JSON。但是這個(gè)格式在Python里面,無論直接當(dāng)字典解析,還是當(dāng)JSON解析,都會(huì)報(bào)錯(cuò),如下圖所示:

圖片圖片

遇到這種情況,有同學(xué)準(zhǔn)備使用正則表達(dá)式來解析,又有同學(xué)直接放棄。

但實(shí)際上,這種數(shù)據(jù)結(jié)構(gòu),使用Yaml是可以直接解析成Python的字典。我們首先來安裝一下Yaml:

pip install pyyaml

然后直接像解析JSON一樣解析:

import yaml
data = '''
{
    name: '青南',
    salary: 999999999,
    address: '上海',
    pro: true
}
'''
info = yaml.safe_load(data)

運(yùn)行效果如下圖所示,已經(jīng)直接解析成了Python的字典:

圖片圖片

Yaml格式是JSON格式的超集,因此,使用pyyaml庫也能直接解析正常的JSON:

圖片圖片

甚至各種復(fù)雜的混合格式也能正常解析:

圖片圖片圖片

責(zé)任編輯:武曉燕 來源: 未聞Code
相關(guān)推薦

2021-06-08 21:36:24

PyCharm爬蟲Scrapy

2024-05-24 09:07:06

JSONprint字符串

2021-10-15 21:08:31

PandasExcel對(duì)象

2024-10-16 21:47:15

2021-12-15 22:04:11

瀏覽器重復(fù)登錄

2020-12-04 06:39:25

爬蟲網(wǎng)頁

2022-06-28 09:31:44

LinuxmacOS系統(tǒng)

2024-07-30 08:16:18

Python代碼工具

2022-03-12 20:38:14

網(wǎng)頁Python測(cè)試

2024-07-30 08:11:16

2022-01-26 07:35:10

爬蟲Requestsgzip

2021-09-26 05:01:55

Scrapy項(xiàng)目爬蟲

2024-11-11 00:38:13

Mypy靜態(tài)類型

2021-05-08 19:33:51

移除字符零寬

2022-05-02 16:27:01

JavaScriptHTMLPython

2021-04-27 22:15:02

Selenium瀏覽器爬蟲

2021-04-12 21:19:01

PythonMakefile項(xiàng)目

2020-12-11 06:30:00

工具分組DataFrame

2020-05-19 13:55:38

Python加密密碼

2022-03-07 09:14:04

Selenium鼠標(biāo)元素
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)