Python爬虫入门案例

我们以爬取当当网图书销售排行榜为例。该排行榜主页地址为:当当图书排行榜。

首先,我们需要安装 requestsBeautifulSoup4 等库:

pip install requests
pip install bs4

然后,使用以下代码来获取并解析页面内容:

import requests   # 用于请求网页数据
from bs4 import BeautifulSoup   # 处理HTML页面数据

# 指定目标URL  
url = 'http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.bb-year-2022-total-desc'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10; Win64; x64) AppleWebKit/537\x38                    .36 (KHTML, like Gecko) Chrome/58\x03824\x30 Safari/537\x38'}

response = requests.get(url, headers=headers)
print(response.status_code)

# 解析响应结果 
soup=BeautifulSoup(response.text,'html.parser')
items=soup.select('#itemFlip > div > ul > li')

for item in items:
    book_title=item.find('div',attrs={'name':'Title'}).get_text()
    book_author=item.find('div',attrs={'name':'Author'}).get_text().strip()
    book_price=item.find('span',attrs={'class':'price_yuan'}).get_text()
    
    print(f'书名: {book_title}\n作者: {book_author}\n价格: {book_price}元\n{"="*50}')
    

上述代码会首先通过 HTTP GET 方法请求目标URL,并打印响应状态码。然后,使用 BeautifulSoup 解析响应结果,并定位到包含图书信息的 HTML 元素节点。

这里我们用 CSS selector 来定位每个图书元素: #itemFlip > div > ul > li
同时,我们从中抽取三个字段 : “书名”、“作者” 和“售价”,并输出它们到控制台。

注意:由于网络环境和网站数据可能有变化,请开发者自行验证适当调整代码细节。所有爬虫需合法、道德且恪守相关规范及隐私保护等条款约束。

你可能感兴趣的:(学习日常,爬虫,Python,python,爬虫)