Python 是一種高效的編程語言,可以輕松地編寫爬蟲程序來獲取互聯(lián)網(wǎng)上的數(shù)據(jù)。在本文中,我們將介紹如何使用 Python 爬取京東商品詳情。
首先,我們需要安裝 Python 的 requests 和 BeautifulSoup 庫。這兩個(gè)庫可以幫助我們發(fā)送 HTTP 請求和解析 HTML 頁面。
import requests from bs4 import BeautifulSoup url = 'https://item.jd.com/123456.html' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') print(soup.prettify())
以上代碼會(huì)獲取京東商品詳情頁的 HTML 頁面,并使用 BeautifulSoup 解析 HTML。prettify() 方法可以將 HTML 格式化輸出,方便我們查看結(jié)果。
接下來,我們需要從 HTML 中提取商品信息。通過分析 HTML 頁面,我們可以找到商品名稱、價(jià)格、銷量等信息所在的標(biāo)簽。
title = soup.find('div', {'class': 'sku-name'}).text.strip() price = soup.find('span', {'class': 'price J-p-123456'}).text.strip() sales = soup.find('a', {'class': 'count J-reviewCount'}).text.strip() print('商品名稱:', title) print('價(jià)格:', price) print('銷量:', sales)
以上代碼會(huì)從 HTML 頁面中提取商品名稱、價(jià)格和銷量,并輸出到控制臺(tái)。
最后,我們可以將商品信息保存到文件或數(shù)據(jù)庫中,以便后續(xù)分析和使用。
import pymysql conn = pymysql.connect(host='localhost', user='root', password='password', database='jd') cursor = conn.cursor() cursor.execute('CREATE TABLE IF NOT EXISTS products (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255), price FLOAT, sales INT)') cursor.execute('INSERT INTO products (title, price, sales) VALUES (%s, %s, %s)', (title, price, sales)) conn.commit() conn.close()
以上代碼會(huì)將商品名稱、價(jià)格和銷量保存到名為 jd 的數(shù)據(jù)庫中的 products 表中。
到此為止,我們已經(jīng)學(xué)會(huì)了如何使用 Python 爬取京東商品詳情,提取商品信息并保存到數(shù)據(jù)庫中。