1. 程式人生 > >抓取淘寶商品資訊爬蟲

抓取淘寶商品資訊爬蟲

目標:獲取淘寶搜尋頁面資訊,爬取商品的名稱和價格

方法:淘寶的搜尋介面

          翻頁處理

庫:requests

對比網址:

起始頁
第二頁s=44
第三頁s=88

得到    第n頁是s=(n-1)*44

淘寶網站的robots協議(一般網站的robots協議約定放在網站的主目錄下的/robots.txt中)

可以看出爬蟲不得對淘寶的搜尋頁面進行爬取(爬取速度就像人類的速度則是允許的)

User-agent使用者(叫爬蟲種類或者名稱)
Allow允許爬取的目錄
Disallow不允許爬取的目錄

程式結構:

1.提交商品搜尋請求,迴圈獲得頁面

2.從每個頁面中提取商品的名稱和價格資訊

3.列印輸出

以搜尋鞋為例:


結論:raw_title和view_price分別對應名稱和價格

程式碼:

# -*- coding:utf-8 -*-  # 解決python不相容中文
# 載入requests庫
import requests
# 載入正則表示式模組
import re


# 爬取網頁內容模組
def get_html_text(url):  # 獲取要訪問的網址
try:
        r = requests.get(url, timeout=30)  # 把爬取後的內容賦給r,等待時間對多30秒
r.raise_for_status()  # 爬取網頁時返回的狀態碼
r.encoding = r.apparent_encoding  # 把從內容中分析的編碼方式賦給從HTTP header中猜測的編碼方式
return r.text # 返回爬取網頁後的文字 except RuntimeError: # 一般超時錯誤 return "" # 函式結束返回 # 從爬取網頁的文字內容中提取有價值資訊 def parse_page(self, html): # 接收 try: find_price = re.findall(r'\"view_price\"\:\"[\d\.]*\"', html) find_title = re.findall(r'\"raw_title\"\:\".*?\"', html) for i in range(len
(find_price)): price = eval(find_price[i].split(':')[1]) title = eval(find_title[i].split(':')[1]) self.append([price, title]) except RuntimeError: # 一般超時錯誤 print() # 列印提取後的資料 def print_goods_list(data): headline = "{:4}\t{:8}\t{:16}" print(headline.format("序號", "價格", "商品名稱")) count = 0 for i in data: count = count + 1 print(headline.format(count, i[0], i[1])) # 主函式 def main(): search_text = '鞋' # 設定在淘寶搜尋的內容 depth = 3 # 設定爬取深度為3頁 start_url = 'https://s.taobao.com/search?q=' + search_text information_list = [] for i in range(depth): try: url = start_url + '$s=' + str(44*i) html = get_html_text(url) parse_page(information_list, html) except RuntimeError: # 一般超時錯誤 continue print_goods_list(information_list) main()

相關推薦

商品資訊爬蟲

目標:獲取淘寶搜尋頁面資訊,爬取商品的名稱和價格方法:淘寶的搜尋介面          翻頁處理庫:requests對比網址:起始頁第二頁s=44第三頁s=88得到    第n頁是s=(n-1)*44淘寶網站的robots協議(一般網站的robots協議約定放在網站的主目錄下

商品資訊並製作商品資訊比價表(以口紅為例)

快速抓取淘寶上口紅資訊 import requests import re import os def getHtmlText(url): try: r=reques

Python,自己修改的爬去網頁的程式碼 解決Python爬蟲商品資訊也不報錯,也不輸出資訊

程式碼部分: 下面是正確的: import requests import re def getHTMLText(url): try: r = requests.get(url, timeout = 30) r.raise_for_stat

16-使用Selenium模擬瀏覽器商品美食資訊

淘寶由於含有很多請求引數和加密引數,如果直接分析ajax會非常繁瑣,selenium自動化測試工具可以驅動瀏覽器自動完成一些操作,如模擬點選、輸入、下拉等,這樣我們只需要關心操作而不需要關心後臺發生了怎樣的請求。PhantomJS是一個無介面的瀏覽器。 爬取淘寶搜尋關鍵詞下的寶貝內容,爬取到MONGODB,

Python,自己修改的爬去網頁的程式碼 解決Python爬蟲商品資訊也不報錯,也不輸出資訊

程式碼部分: 下面是正確的: import requests import re def getHTMLText(url): try: r = requests.get(ur

我要爬爬蟲(11)-用selenium爬商品資訊

思路就是用selenium操作瀏覽器,訪問淘寶,輸入關鍵詞,查詢,用pyquery解析目標資訊,翻頁,儲存到mongodb. 函式定義三個: 1 開啟瀏覽器,查詢初始化,翻頁 from selenium import webdriver from se

使用Selenium模擬瀏覽器商品美食信息

get cto sub element 得到 support pan args time 1.搜索關鍵詞:利用Selenium驅動瀏覽器,得到商品列表。 2.分析頁碼並翻頁:得到商品頁碼數,模擬翻頁,得到後續頁面的商品列表。 3.分析提取商品內容:利用PyQuery分析源碼

Python爬商品資訊

頁面分析 開啟淘寶搜尋衛衣男 檢視原始碼 我們這裡可以找到幾個關鍵詞 通過分析我們可以找到價格,郵費,商家地址,付款人數,商家ID,店鋪名稱。 分析URL 我們可以看到 第一頁url:https://s.taobao.com/search?q=%E5%8D%AB%E

商品資訊

我們先來解決一下前置知識,本爬蟲會用到以下庫 requests 是一個很實用Python的一個很實用的HTTP客戶端,可以滿足如今爬蟲的需要 json 用於資料的處理 csv 用於資料的儲存 分析說明 爬取淘寶商品的資訊,資料主要用於分析市場趨勢,從

2018.2.23商品資訊爬蟲

#以下只是爬取一頁可以通過for迴圈的辦法來爬取兩頁三頁甚至更多,這是for in 的用法>>>languages = ["C", "C++", "Perl", "Python"] >>> forxinlanguages:... p

利用selenium爬商品資訊

# coding: utf-8from selenium import webdriverimport time# 1.建立瀏覽器物件driver = webdriver.Firefox()# 2.開啟淘寶首頁driver.get('http://www.taobao.com

python 價格資訊

接著上一回。這段程式實現從淘寶主頁開始,輸入搜尋資訊(搜尋‘手錶’),確定搜尋後,爬取結果前20頁所有的價格資訊和地區資訊(其他資訊也可以獲取,暫時只獲取了這兩個),最後用matplotlib繪製了手表價格與數量的頻率圖。可以看出來,普通手錶價格集中在50-400元左右。下面

python selenium控制瀏覽器爬商品資訊

前言 今天為大家介紹一個Python利用selenium開啟瀏覽器的方式來爬取淘寶商品的資訊,下面就來看看,關於selenium

利用Python爬蟲商品做數據挖掘分析實戰篇,超詳細教程

實戰 趨勢 fat sts AI top 名稱 2萬 安裝模塊 項目內容 本案例選擇>> 商品類目:沙發; 數量:共100頁 4400個商品; 篩選條件:天貓、銷量從高到低、價格500元以上。 項目目的 1. 對商品標題進行文本分析 詞雲可視化 2.

爬蟲--商品資訊定向爬蟲

目標:獲取淘寶搜尋頁面的資訊,提取其中的名稱和價格 理解:①淘寶的搜尋介面 ②翻頁的處理 技術路線:requests-re 首先在淘寶介面,搜尋關鍵字“書包”,複製搜尋框上的連結。在淘寶上,同一類商品往往會有很多頁。在這裡我們爬取書包的前兩頁。點選第二頁,在複製搜尋框上

【Python3 爬蟲學習筆記】動態渲染頁面爬 4 —— 使用Selenium爬商品

並不是所有頁面都可以通過分析Ajax來完成抓取。比如,淘寶,它的整個頁面資料確實也是通過Ajax獲取的,但是這些Ajax介面引數比較複雜,可能會包含加密祕鑰等,所以如果想自己構造Ajax引數,還是比較困難的。對於這種頁面,最方便快捷的抓取方法就是通過Seleni

教您使用java爬蟲geccoJD全部商品資訊

轉自:http://www.geccocrawler.com/demo-jd/ gecco爬蟲 如果對gecco還沒有了解可以參看一下gecco的github首頁。gecco爬蟲十分的簡單易用,JD全部商品資訊的抓取9個類就能搞定。 JD網站的分析

網路爬蟲:Python+requests+re+xlwt 爬商品並把價格和名字寫入Excel表格

由於學東西比較死,不夠靈活,學校的acm實驗室做演算法題,打比賽,我是真的跟不上那些大佬...就看到人以前實驗室退出的,加到 其他實驗室學習專案,做專案,做專案相對學習演算法來說,沒有那麼燒腦,還能做出有趣的東西....我就想學習做專案,因為打比賽我是拿不到能看的成績....

教您使用java爬蟲geccoJD全部商品資訊(三)

詳情頁抓取 @Gecco(matchUrl="http://item.jd.com/{code}.html", pipelines="consolePipeline") public classProductDetailimplementsHtmlBean{ private static fin

利用Python打造了商品資訊定向爬蟲!老闆給五千!我該收嗎?

    程式的結構設計 進群:960410445  即可獲取數十套PDF! 步驟1:提交商品搜尋請求,迴圈獲取頁面 步驟2:對於每個頁面,提取商品名稱和價格資訊 步驟3:將資訊輸出到螢幕上 eval():eval函式能夠將我們獲取