这里以豆瓣TOP250为案例,爬取网页信息
import requests#python HTTP客户端库,编写爬虫和测试服务器响应数据会用到的类库
import re
from bs4 import BeautifulSoup
print('正在从豆瓣电影TOP250爬取数据……')
# url网址 = 'https://movie.douban.com/top250?start=0' (第一页)
for page in range(10):
url = 'https://movie.douban.com/top250?start='+str(page*25)
print('-----------正在爬取第'+str(page+1)+'页------')
# 根据url网址获取网页源码
html=requests.get(url)
html.raise_for_status()
try:
# 解析 HTML源代码
soup=BeautifulSoup(html.text, 'html.parser')
# 使用正则 表达式将网页文本转换成字符串
soup=str(soup)
# 该函数根据包含正则表达式的字符串解析创建模式对象
title=re.compile(r'<span class="title">(.*)</span>')
names = re.findall(title,soup)
for name in names:
#剔除’/‘后面的英文名(英文名特征是含有’/‘)
if name.find('/') == -1:
print(name)
except Exception as e:
print(e)
print("爬取完毕")