python功能性爬虫案例_Python使用requests及BeautifulSoup构建爬虫实例代码
本文研究的主要是Python使用requests及BeautifulSoup构建一个网络爬虫,具体步骤如下。
功能说明
在Python下面可使用requests模块请求某个url获取响应的html文件,接着使用BeautifulSoup解析某个html。
案例
假设我要http://maoyan.com/board/4猫眼电影的top100电影的相关信息,如下截图:
获取电影的标题及url。
安装requests和BeautifulSoup
使用pip工具安装这两个工具。
pip install requests
pip install beautifulsoup4
程序
__author__ = 'Qian Yang'
# -*- coding:utf-8 -*-
import requests
from bs4 import BeautifulSoup
def get_one_page(url):
response= requests.get(url)
if response.status_code == 200:
return response.content.decode("utf8","ignore").encode("gbk","ignore")
#采用BeautifulSoup解析
def bs4_paraser(html):
all_value = []
value = {}
soup = BeautifulSoup(html,'html.parser')
# 获取每一个电影
all_div_item = soup.find_all('div', attrs={'class': 'movie-item-info'})
for r in all_div_item:
# 获取电影的名称和url
title = r.find_all(name="p",attrs={"class":"name"})[0].string
movie_url = r.find_all('p', attrs={'class': 'name'})[0].a['href']
value['title'] = title
value['movie_url'] = movie_url
all_value.append(value)
value = {}
return all_value
def main():
url = 'http://maoyan.com/board/4'
html = get_one_page(url)
all_value = bs4_paraser(html)
print(all_value)
if __name__ == '__main__':
main()
代码测试可用,实现效果:
总结
以上就是本文关于Python使用requests及BeautifulSoup构建爬虫实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
python功能性爬虫案例_Python使用requests及BeautifulSoup构建爬虫实例代码相关推荐
- python按日期排序_python按修改时间顺序排列文件的实例代码
python按修改时间顺序排列文件,具体代码如下所示: import os def sort_file_by_time(file_path): files = os.listdir(file_path ...
- python读取灰度图_Python读取MRI并显示为灰度图像实例代码
Python读取MRI并显示为灰度图像实例代码 本文实例主要关于Python实现读取MRI(核磁共振成像)为numpy数组,使用imshow显示为灰度. 代码如下: import matplotlib ...
- python画棒棒糖程序_Python使用turtle库绘制小猪佩奇(实例代码)
turtle(海龟)是Python重要的标准库之一,它能够进行基本的图形绘制.turtle图形绘制的概念诞生于1969年,成功应用于LOGO编程语言. turtle库绘制图形有一个基本框架:一个小海龟 ...
- python音乐制作案例_Python制作线上音乐播放器的代码示例
这篇文章主要为大家详细介绍了Python实现在线音乐播放器的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近这几天,学习了一下python,对于爬虫比较感兴趣,就做了一个简单的爬虫项目 ...
- python处理pdf 层_Python处理PDF及生成多层PDF实例代码
Python提供了众多的PDF支持库,本文是在Python3环境下,试用了两个库来完成PDF的生成的功能.PyPDF对于读取PDF支持较好,但是没找到生成多层PDF的方法.Reportlab看起来更成 ...
- python处理mat数据_python读取.mat文件的数据及实例代码
首先导入scipy的包 from scipy.io import loadmat 然后读取 m = loadmat("F:/__identity/activity/论文/data/D001. ...
- python爬虫实例手机_Python爬虫实现爬取京东手机页面的图片(实例代码)
实例如下所示: __author__ = 'Fred Zhao' import requests from bs4 import BeautifulSoup import os from urllib ...
- python爬虫网页中的图片_Python爬虫爬取一个网页上的图片地址实例代码
本文实例主要是实现爬取一个网页上的图片地址,具体如下. 读取一个网页的源代码: import urllib.request def getHtml(url): html=urllib.request. ...
- Python下基于requests及BeautifulSoup构建网络爬虫
功能说明 在Python下面可使用requests模块请求某个url获取响应的html文件,接着使用BeautifulSoup解析某个html. 案例 假设我要http://maoyan.com/bo ...
最新文章
- Redis集群:redis cluster方案
- 转 UIAlertView 不显示、屏幕变灰
- 数据库服务器修改地址,数据库服务器修改地址吗
- POJ NOI MATH-7656 李白的酒
- 鼠标悬停微信图标显示二维码
- 力天创见客流统计分析系统
- android手机改电视,DIY让手机变成万能电视遥控器 手机万能遥控器设置方法
- LCS算法:最长公共子序列
- Matlab图像边缘检测Roberts\Sobel\Prewitt\Canny算子
- 14.1 常见数据结构、List集合(ArrayList、LinkedList)、Set集合(HashSet、LinkedHashSet)、可变参数方法
- PADAUK应广 单片机 PMS132B-S14 PMS132B-S08 PMS132B-S16
- 教你技巧不让IP地址冲突干扰你的网络局域网
- 32位操作系统是什么意思?
- 问道服务器etc修改教程,问道自定义宠物etc写法教程
- 新概念c语言教程答案,新概念编程C语言篇习题解答
- 寻求一个兼职的安卓开发工程师
- 【转】android hal 层GPS 研究总结——关于GPS GGA/GSV/RMC 数据的解析
- 计算机强行重启显示器不亮,打开计算机电源后,显示器不亮,主机不断自动重启...
- Windows10输入法添加自定义短语
- vbs脚本实现搞笑代码vbs实现自动打字祝福(耗子尾汁)