學習爬蟲基礎7 動態的去獲取 json資料

2021-08-03 21:41:11 字數 1436 閱讀 5841

進入豆瓣電影 檢視原始碼,原始碼中並沒有我們需要的資料,通過瀏覽器的檢查功能中的 network ,可以看到頁面上的資料是通過前端傳送ajax請求,動態的獲取的.這樣我們就不能直接在html頁面中獲取到想要的資料了.

解決的辦法: 直接傳送請求去後台獲取到返回的json資料

位址列中的請求路徑:

根據需求檢索的電影

檢索的結果

前段傳送的ajax請求 和返回的資料

在header 訊息頭中的一欄的 最下邊是我們的檢索方式 也就是我們傳送請求需攜帶的引數

基於以上的條件我們就可以採用**去傳送我們的請求

**演示:

# coding=utf-8

# # sort=t&range=0,10&tags=%e5%89%a7%e6%83%85&start=0

# 分析:

# 請求需要帶去的引數

# sort:t 排序

# range:0,10 評分範圍

# tags:電影,劇情 標籤(電影型別)

# start:0 資料的起始位置 從0 開始 每頁20條資料

import urllib

import urllib2

import os

defload_page

(url):

"""傳送請求載入頁面"""

headers =

# 編碼

key_words = urllib.urlencode(key_words)

url = base_url + key_words

# 呼叫函式

load_page(url)

defmain

():"""程式主函式"""

spider()

if __name__ == "__main__":

main()

返回的結果:

,,{

"directors": [

"羅伯特·澤公尺吉斯"

],"rate": "9.4"

, "cover_x": 721

, "star": "50"

, "title": "阿甘正傳"

,

Java java爬蟲獲取動態網頁的資料

前段時間一直在研究爬蟲,抓取網路上的特定的資料,如果只是靜態網頁就是再簡單不過了,直接使用jsoup document doc jsoup.connect url timeout 2000 get 獲取到document然後就想幹嘛就幹嘛了,但是一旦碰到一些動態生成的 就不行了,由於資料是網頁載入完...

js動態獲取select選中的option

js動態獲取select選中的option 通過2種方式 一 jquery方法 頁面中必須載入過jquery庫 推薦使用 1 var options test option selected 獲取選中的項 2 alert options.val 拿到選中項的值 3 alert options.tex...

HTML獲取js動態生成的input的資料

html獲取js動態生成的input的資料,每按一次增加頁都自動生成一行div,開啟和刪除標籤都繫結當條記錄 project title 方案設定 div btn onclick window.history.go 1 返回 button btn zengjia style margin left ...