網路爬蟲: 從allitebooks.com抓取書籍資訊並從amazon.com抓取價格(3): 根據書籍ISBN碼抓取amazon.com價格...
通過上一篇隨筆的處理,我們已經拿到了書的書名和ISBN碼。(網路爬蟲: 從allitebooks.com抓取書籍資訊並從amazon.com抓取價格(2): 抓取allitebooks.com書籍資訊及ISBN碼)
接下來將通過ISBN碼去amazon.com獲取每本書對應的價格。
一、瞭解需要和分析網站
通過分析amazon.com得知,以ISBN碼作為搜尋關鍵字可查詢到對應的書。
結果頁碼就有這本書的價格,既然價格是以$符號開頭,那就可以通過正規表示式得到價格。
通過正規表示式匹配價格程式碼:
def get_price_amazon(isbn):
base_url = "https://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords="
url = base_url + str(isbn)
page = urlopen(url)
soup = BeautifulSoup(page, 'lxml')
page.close()
soup = BeautifulSoup(html_content, 'lxml')
price_regexp = re.compile("\$[0-9]+(\.[0-9]{2})?")
price = soup.find(text=price_regexp)
return [isbn, price]
上一篇隨筆中已經得到了所有書籍的ISBN碼,遍歷所有的ISBN碼傳入get_price_amazon()方法即可獲取所有書籍的價格:
def get_all_isbn():
all_isbn = []
with open('isbn.csv', 'rt') as csvfile:
spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
for row in spamreader:
all_isbn.append(row[0])
return all_isbn
def run():
qs = []
pool = ThreadPool(processes=10)
book_price_list = []
for isbn in get_all_isbn():
price = get_price_amazon(isbn)
book_price_list.append(price)
執行結果:
二、將兩部分結果資料合併
剛學過資料處理(利用Python進行資料分析 基礎系列隨筆彙總),為了練練手,這裡通過pandas將兩部分資料合併起來:
book_info_data = pd.read_csv('books.csv')
price_data = pd.read_csv('prices.csv')
result = pd.merge(book_info_data, price_data, on='isbn')
result.to_csv('result.csv', index=False, header=True, columns=['isbn', 'title', 'price'])
最終結果:
完整程式碼請移步github:https://github.com/backslash112/book_scraper_python
Beautiful Soup基礎知識:網路爬蟲: 從allitebooks.com抓取書籍資訊並從amazon.com抓取價格(1): 基礎知識Beautiful Soup
我們處於大資料時代,對資料處理感興趣的朋友歡迎檢視另一個系列隨筆:利用Python進行資料分析 基礎系列隨筆彙總
接下來打算學習Scrapy庫,Scrapy是一個採集工具,它可以幫你大幅降低網頁查詢和識別工作,輕鬆採集一個或多個域名的資訊。有興趣的朋友歡迎關注本部落格,也歡迎大家留言進行討論。
相關文章
- 網路爬蟲:使用Scrapy框架編寫一個抓取書籍資訊的爬蟲服務爬蟲框架
- TypeScript_抓取酒店價格資料TypeScript
- 50行爬蟲?️抓取並處理圖靈書目爬蟲圖靈
- 爬蟲app資訊抓取之apk反編譯抓取爬蟲APPAPK編譯
- 網路爬蟲之抓取郵箱爬蟲
- Python爬蟲抓取股票資訊Python爬蟲
- 爬蟲練手:使用scrapy抓取噹噹網程式設計類圖書資訊,並儲存到MySQL爬蟲程式設計MySql
- 爬蟲抓取網頁資料原理爬蟲網頁
- 爬蟲抓取UserAgent問題爬蟲
- Scrapy爬蟲:實習僧網最新招聘資訊抓取爬蟲
- python爬蟲-抓取騰訊招聘資訊頁面Python爬蟲
- java爬取豆瓣書籍資訊Java
- 爬蟲抓取網頁的詳細流程爬蟲網頁
- 計算機書籍- 網路爬蟲開發實戰計算機爬蟲
- Python爬蟲教程+書籍分享Python爬蟲
- wget 網頁爬蟲,網頁抓取工具wget網頁爬蟲
- python爬蟲抓取哈爾濱天氣資訊(靜態爬蟲)Python爬蟲
- 爬蟲原理與資料抓取爬蟲
- Google 爬蟲如何抓取 JavaScript 的?Go爬蟲JavaScript
- 從網頁上抓取資料網頁
- 爬蟲技術抓取網站資料方法爬蟲網站
- Python爬蟲使用代理proxy抓取網頁Python爬蟲網頁
- 爬取網頁後的抓取資料_3種抓取網頁資料方法網頁
- 網路爬蟲抓取邊界的法律與技術思考爬蟲
- 網路爬蟲如何獲取IP進行資料抓取爬蟲
- 三種 Python 網路內容抓取工具與爬蟲Python爬蟲
- [網路爬蟲]使用node.js cheerio抓取網頁資料爬蟲Node.js網頁
- 如何抓取網頁資訊?網頁
- Python爬蟲抓取知乎所有使用者資訊Python爬蟲
- 施普林格(Springer)免費書籍Spring
- python簡書資料抓取Python
- 利用Python網路爬蟲抓取網易雲音樂歌詞Python爬蟲
- 用Python爬蟲抓取代理IPPython爬蟲
- Python網路爬蟲抓取動態網頁並將資料存入資料庫MYSQLPython爬蟲網頁資料庫MySql
- python爬蟲練習之爬取豆瓣讀書所有標籤下的書籍資訊Python爬蟲
- Python爬蟲二:抓取京東商品列表頁面資訊Python爬蟲
- 如何使用代理IP進行資料抓取,PHP爬蟲抓取亞馬遜商品資料PHP爬蟲亞馬遜
- 機器學習股票價格預測從爬蟲到預測-資料爬取部分機器學習爬蟲