Python實戰(zhàn) - 第4節(jié):如何獲取頁面中的動態(tài)數(shù)據

筆記

  • 通過觀察加載動態(tài)數(shù)據時的網絡交互,尋找加載更多數(shù)據的Request的規(guī)律,進一步構造相應Request來獲取Response浴骂。

作業(yè)

  • 代碼:
from bs4 import BeautifulSoup
import requests
import urllib.request
import os
import socket

urls = ['http://weheartit.com/inspirations/taylorswift?page={}'.format(str(i)) for i in range(1, 2)]
'''proxies = {"http": "122.96.59.99:3128"}'''
'''proxies = {"http": "121.69.29.162:8118"}'''
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36'
}
base_path = 'F:\\workspace-python\\hw_02\\img_dl'


def download_img(img_url):
    file_name = img_url.split("/")[-2] + "." + img_url.split(".")[-1]
    target = os.path.join(base_path, file_name)

    print('%s ==> %s' % (img_url, target))
    '''urllib.request.urlretrieve(img_url, target)'''


def process_dynamic_page(url):

    web_data = requests.get(url, headers=headers)
    if web_data.status_code != 200:
        print(web_data.status_code)
        return

    soap = BeautifulSoup(web_data.text, 'lxml')

    images = soap.select('div > div > div > a > img[class="entry-thumbnail"]')
    web_data.close()
    for image in images:
        img_url = image.get('src')
        download_img(img_url)


for url in urls:
    process_dynamic_page(url)
    

  • 執(zhí)行結果(部分):
"D:\Program Files\Python35\python.exe" F:/workspace-python/hw_02/hw_04.py
http://data.whicdn.com/images/201685162/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\201685162.jpg
http://data.whicdn.com/images/261819708/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\261819708.jpg
http://data.whicdn.com/images/262877209/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\262877209.jpg
http://data.whicdn.com/images/225569474/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\225569474.jpg
http://data.whicdn.com/images/264736360/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264736360.jpg
http://data.whicdn.com/images/262204064/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\262204064.jpg
http://data.whicdn.com/images/254688840/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\254688840.jpg
http://data.whicdn.com/images/258279435/superthumb.png ==> F:\workspace-python\hw_02\img_dl\258279435.png
http://data.whicdn.com/images/261497975/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\261497975.jpg
http://data.whicdn.com/images/264710374/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264710374.jpg
http://data.whicdn.com/images/264713023/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264713023.jpg
http://data.whicdn.com/images/264706335/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264706335.jpg
http://data.whicdn.com/images/264721633/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264721633.jpg
http://data.whicdn.com/images/264721658/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264721658.jpg
http://data.whicdn.com/images/264721683/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264721683.jpg
http://data.whicdn.com/images/206651826/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\206651826.jpg
http://data.whicdn.com/images/264711782/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264711782.jpg
http://data.whicdn.com/images/264715635/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264715635.jpg
http://data.whicdn.com/images/264710414/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264710414.jpg
http://data.whicdn.com/images/264697940/superthumb.png ==> F:\workspace-python\hw_02\img_dl\264697940.png
http://data.whicdn.com/images/264697906/superthumb.gif ==> F:\workspace-python\hw_02\img_dl\264697906.gif
http://data.whicdn.com/images/264705727/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264705727.jpg
http://data.whicdn.com/images/264703283/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264703283.jpg
http://data.whicdn.com/images/264703286/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264703286.jpg
http://data.whicdn.com/images/261104252/superthumb.gif ==> F:\workspace-python\hw_02\img_dl\261104252.gif
http://data.whicdn.com/images/264695862/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264695862.jpg
http://data.whicdn.com/images/264695929/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264695929.jpg
http://data.whicdn.com/images/264695960/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264695960.jpg
http://data.whicdn.com/images/173728739/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\173728739.jpg
http://data.whicdn.com/images/197006986/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\197006986.jpg
http://data.whicdn.com/images/264674428/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264674428.jpg
http://data.whicdn.com/images/264579949/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264579949.jpg
http://data.whicdn.com/images/264631087/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264631087.jpg
http://data.whicdn.com/images/264644105/superthumb.png ==> F:\workspace-python\hw_02\img_dl\264644105.png
http://data.whicdn.com/images/264628123/superthumb.png ==> F:\workspace-python\hw_02\img_dl\264628123.png
http://data.whicdn.com/images/264634842/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\264634842.jpg
http://data.whicdn.com/images/259844486/superthumb.jpg ==> F:\workspace-python\hw_02\img_dl\259844486.jpg
  • 遺留問題:
  • 下載圖片時,提示 “urllib.error.URLError: <urlopen error [WinError 10013] 以一種訪問權限不允許的方式做了一個訪問套接字的嘗試。>”终抽,詳見討論帖:http://study.163.com/forum/detail/1002726062.htm
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市桶至,隨后出現(xiàn)的幾起案子昼伴,更是在濱河造成了極大的恐慌,老刑警劉巖镣屹,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件圃郊,死亡現(xiàn)場離奇詭異,居然都是意外死亡野瘦,警方通過查閱死者的電腦和手機描沟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鞭光,“玉大人吏廉,你說我怎么就攤上這事《栊恚” “怎么了席覆?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長汹买。 經常有香客問我佩伤,道長聊倔,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任生巡,我火速辦了婚禮耙蔑,結果婚禮上,老公的妹妹穿的比我還像新娘孤荣。我一直安慰自己甸陌,他們只是感情好,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布盐股。 她就那樣靜靜地躺著钱豁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪疯汁。 梳的紋絲不亂的頭發(fā)上牲尺,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天,我揣著相機與錄音幌蚊,去河邊找鬼谤碳。 笑死,一個胖子當著我的面吹牛霹肝,可吹牛的內容都是我干的估蹄。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼沫换,長吁一口氣:“原來是場噩夢啊……” “哼臭蚁!你這毒婦竟也來了?” 一聲冷哼從身側響起讯赏,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤垮兑,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后漱挎,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體系枪,經...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年磕谅,在試婚紗的時候發(fā)現(xiàn)自己被綠了私爷。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡膊夹,死狀恐怖衬浑,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情放刨,我是刑警寧澤工秩,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響助币,放射性物質發(fā)生泄漏浪听。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一眉菱、第九天 我趴在偏房一處隱蔽的房頂上張望迹栓。 院中可真熱鬧,春花似錦俭缓、人聲如沸迈螟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至褥民,卻和暖如春季春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背消返。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工载弄, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人撵颊。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓宇攻,卻偏偏與公主長得像,于是被迫代替她去往敵國和親倡勇。 傳聞我的和親對象是個殘疾皇子逞刷,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內容