日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

网络请求分析实战篇(01)—— 爬取amazon搜索栏的关联关键词

發(fā)布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 网络请求分析实战篇(01)—— 爬取amazon搜索栏的关联关键词 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

網(wǎng)絡(luò)請求分析實戰(zhàn)篇(01)—— 爬取amazon搜索欄的關(guān)聯(lián)關(guān)鍵詞

1. 需求介紹

  • 在amazon搜索商品,當(dāng)輸入部分單詞時,下面會自動彈出一些關(guān)聯(lián)關(guān)鍵詞。這些關(guān)鍵詞是amazon內(nèi)部總結(jié),統(tǒng)計的熱門搜索關(guān)鍵詞。我們現(xiàn)在的需求就是,給出一些關(guān)鍵詞,然后把對應(yīng)的關(guān)聯(lián)關(guān)鍵詞抓出來。

2. 環(huán)境

  • 系統(tǒng):win7
  • python 3.6.1
  • requests 2.14.2 (通過pip list查看)

3. 分析請求

  • 第一步:進入amazon主頁,將網(wǎng)頁源代碼保存下來,以備后面分析參數(shù)來源。這兒需要注意到一個問題就是,這兒說的網(wǎng)頁源代碼指的是請求下來的原始頁面,而不是瀏覽器渲染后的代碼。區(qū)別如下:

    • 抓下來的網(wǎng)頁源代碼
    • 瀏覽器渲染后的代碼
  • 第二步:在輸入“ car ”時,抓取到的網(wǎng)絡(luò)請求如下:

# General Request URL:https://completion.amazon.com/search/complete?method=completion&mkt=1&r=GFPC5GA3RHYHZK8YKY93&s=136-4489048-3064812&c=&p=Gateway&l=en_US&b2b=0&fresh=0&sv=desktop&client=amazon-search-ui&x=String&search-alias=aps&ks=82&q=car&qs=&cf=1&fb=1&sc=1& Request Method:GET Status Code:200 OK Remote Address:54.239.17.86:443 Referrer Policy:no-referrer-when-downgrade# Request Headers Host:completion.amazon.com Referer:https://www.amazon.com/ref=nav_logo User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36# Query String parameters method:completion mkt:1 r:GFPC5GA3RHYHZK8YKY93 s:136-4489048-3064812 c: p:Gateway l:en_US b2b:0 fresh:0 sv:desktop client:amazon-search-ui x:String search-alias:aps ks:82 q:car qs: cf:1 fb:1 sc:1
  • 從上面的參數(shù)中,發(fā)現(xiàn)有3個參數(shù)是需要我們重點關(guān)注的:
r:GFPC5GA3RHYHZK8YKY93 s:136-4489048-3064812 search-alias:aps
  • 第三步:分析這幾個參數(shù)的來源:
    • 之前我的文章中就提到過,這種參數(shù)來源,一般是在以下的4個點:
第一,網(wǎng)頁源代碼中攜帶。 第二,藏在服務(wù)器返回過來的cookie中。 第三,網(wǎng)頁js腳本計算生成。 第四,登錄時,請求js腳本生成,或者同步產(chǎn)生的其他網(wǎng)頁中。
  • 在這個案例中,發(fā)現(xiàn)相對比較簡單,這些參數(shù)就屬于第一種情況,網(wǎng)頁源代碼中攜帶。

4. 編寫爬蟲

  • 從上面的分析過程來看,就知道抓取這個數(shù)據(jù)很簡單,分兩步:
    • 第一:抓取amazon主頁,從主頁源代碼中取出必要的參數(shù)。
    • 第二:使用這些參數(shù),向目標(biāo)網(wǎng)頁請求關(guān)聯(lián)關(guān)鍵詞。
import requests import reunicornHeader = {'Host': 'www.amazon.com','Referer': 'https://www.amazon.com','user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36' }if __name__ == "__main__":# 第一步:先把amazon主頁拉下來resp = requests.get("https://www.amazon.com/ref=nav_logo", headers=unicornHeader)respText = resp.text# print(f"respText = {respText}")# 第二步:從主頁中提取出相關(guān)的參數(shù)'''method:completionmkt:1r:T9GNBFENMKCSHQ96SN69s:136-4489048-3064812c:p:Gatewayl:en_USb2b:0fresh:0sv:desktopclient:amazon-search-uix:Stringsearch-alias:mobileks:82q:carqs:cf:1fb:1sc:1'''# r:T9GNBFENMKCSHQ96SN69# var ue_id = 'T9GNBFENMKCSHQ96SN69',ue_id_Re = re.search("ue_id = '(.*?)'", respText, re.DOTALL)print(f"ue_id_Re = {ue_id_Re}")if ue_id_Re:ue_id = ue_id_Re.group(1)else:ue_id = ""# s:136-4489048-3064812# ue_sid = '136-4489048-3064812',ue_sid_Re = re.search("ue_sid = '(.*?)'", respText, re.DOTALL)print(f"ue_sid_Re = {ue_sid_Re}")if ue_sid_Re:ue_sid = ue_sid_Re.group(1)else:ue_sid = ""# 第三步:構(gòu)造請求originalKey = "car" # 原始關(guān)鍵字# search_alias = 'mobile'# aps # All Departments 類別search_alias = 'aps' # 搜索類別,這個是類別下拉框中的。主頁源碼中也有ks = 100 # 先自己指定,發(fā)現(xiàn)并不影響結(jié)果# https://completion.amazon.com/search/complete?method=completion&mkt=1&r=T9GNBFENMKCSHQ96SN69&s=136-4489048-3064812&c=&p=Gateway&l=en_US&b2b=0&fresh=0&sv=desktop&client=amazon-search-ui&x=String&search-alias=mobile&ks=67&q=c&qs=&cf=1&fb=1&sc=1&keywordsUrl = f"https://completion.amazon.com/search/complete?method=completion&mkt=1&r={ue_id}&s={ue_sid}&c=&p=Gateway&l=en_US&b2b=0&fresh=0&sv=desktop&client=amazon-search-ui&x=String&search-alias={search_alias}&ks={ks}&q={originalKey}&qs=&cf=1&fb=1&sc=1&"secondResp = requests.get(keywordsUrl, headers=unicornHeader)print(f"secondRespText = {secondResp.text}")
  • 結(jié)果輸出:
# 發(fā)現(xiàn)關(guān)聯(lián)關(guān)鍵詞已經(jīng)成功提取了ue_id_Re = <_sre.SRE_Match object; span=(1617, 1647), match="ue_id = '6M0F9KJN25H89JPK5B1R'"> ue_sid_Re = <_sre.SRE_Match object; span=(1732, 1762), match="ue_sid = '144-1591423-1127326'"> secondRespText = completion = ["car",["car phone mount","carbon monoxide detector","car charger","cards against humanity","car accessories","car seat protector","car vacuum","cardigans for women","carry on luggage","car phone holder"],[{"nodes":[{"name":"Cell Phones & Accessories","alias":"mobile"}]},{},{},{},{},{},{},{},{},{}],[],"AA2EWWA46T4I"];String();.

總結(jié)

以上是生活随笔為你收集整理的网络请求分析实战篇(01)—— 爬取amazon搜索栏的关联关键词的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲欧美日韩久久精品 | 国产欧美日韩专区发布 | 日韩av在线高清 | 国产情侣激情 | 色女人综合 | 朝鲜一级黄色片 | 精品久久久在线观看 | 午夜试看120秒 | 亚洲一区亚洲二区 | 日本黄色小视频 | 欧美精品色图 | 久久国产经典 | 禁片天堂 | 日韩久久免费视频 | 亚洲欧美一区二区三区在线 | 涩涩一区 | 少妇黄色片 | 久操青青 | 福利免费视频 | 国产在线自 | 婷综合 | 啪啪亚洲 | 亚洲一区二区三区久久久成人动漫 | 亚洲乱码国产乱码精品精软件 | 在线成人黄色 | 国产另类xxxxhd高清 | 97人妻精品一区二区三区软件 | 97久久人澡人人添人人爽 | 美女网站黄页 | 精品人妻无码一区二区色欲产成人 | 咪咪成人网 | 五月婷婷在线观看视频 | 亚洲国产成人91精品 | 久久激情综合 | 久久人人人 | 中文字幕av网址 | 日本高清在线观看 | 理论片一级 | 免费精品视频 | 午夜宅男在线 | 第一色影院 | 乐播av一区二区三区 | 国产熟妇一区二区三区四区 | 日韩人体视频 | h文在线观看| 狼友视频国产精品 | 国产一区二区三区精品在线 | 免费黡色av | 国产精品欧美激情在线 | 成人免费毛片东京热 | 亚洲欧美日韩系列 | 雪白的扔子视频大全在线观看 | 国产一区二区三区 | av网站在线免费播放 | 久久免费福利视频 | 成人性生交大片免费卡看 | 全部毛片永久免费看 | 日韩作爱 | 精品爆乳一区二区三区无码av | 中文字幕亚洲无线码在线一区 | 日本精品一区二区视频 | 暖暖日本在线视频 | 久久手机视频 | 综合色在线观看 | 高清一区二区三区视频 | 欧美双性人妖o0 | 懂色视频在线观看 | 少妇人妻一区二区三区 | 国产婷婷色一区二区三区 | 对白超刺激精彩粗话av | 五月天丁香激情 | 国产稀缺真实呦乱在线 | 黄色录象片| 伊在线久久丫 | 国产按摩一区二区三区 | 久久伊人中文字幕 | 人人干视频 | 久伊人网 | 久久国产精品免费观看 | 涩涩视频免费观看 | 极品少妇xxx | 中文字幕永久在线视频 | 777奇米色 | 性生活一级大片 | 国产精品永久免费视频 | 午夜宅男在线 | 欧美日韩在线视频免费播放 | 欧美性插动态图 | 欧美日韩视频在线播放 | 久操热线| 欧美成人免费在线视频 | 国产精品一级黄色片 | 黄色网页免费在线观看 | 亚洲天堂五月天 | 中文日本在线 | 免费大片黄在线观看 | 天天射夜夜撸 | 狠狠干天天爱 | 黄色片网站在线播放 |