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:# 获取电影的名称和urltitle = r.find_all(name="p",attrs={"class":"name"})[0].stringmovie_url = r.find_all('p', attrs={'class': 'name'})[0].a['href']value['title'] = titlevalue['movie_url'] = movie_urlall_value.append(value)value = {}return all_valuedef 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使用requests及BeautifulSoup构建一个网络爬虫,具体步骤如下. 功能说明 在Python下面可使用requests模块请求某个url获取响应的html文件 ...
- Python下基于栈和逆波兰算法实现四则运算
参考<大话数据结构>一书4.9节,Python下基于栈和逆波兰算法实现四则运算. 栈的实现使用顺序结构,即基于列表实现,参考本人博客Python实现顺序结构栈Sequence Stack ...
- java毕业设计——基于java+Jsoup+HttpClient的网络爬虫技术的网络新闻分析系统设计与实现(毕业论文+程序源码)——网络新闻分析系统
基于java+Jsoup+HttpClient的网络爬虫技术的网络新闻分析系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+Jsoup+HttpClient的网络爬虫技术的网络 ...
- 基于Python会话与requests库实现河北网络学院自动化
开发背景: 鉴于上次使用selenium实现浏览器实现自动化较繁琐,因此本次在各位的鼓舞下开发基于requests库实现的无界面加密打包软件,轻松实现河北干部网络学院视频倍速! 代码逻辑: 本次软件开 ...
- 基于Jsoup实现的简单网络爬虫
之前是完全不会爬虫的,但是新项目中需要从网页上爬一大堆的数据,所以就花了一天时间学习了下.主题部分还是很简单的. * 既然想要写博文,那我就要写的细致点,对自己对读者都是一种负责! 什么是爬虫? 我所 ...
- Python之父强烈推荐,Python3网络爬虫开发实战,爬虫入门必看书籍,豆瓣评分9.2
实操性很强的一本工具书,由浅入深,深入浅出.前面从环境配置到爬虫原理.基本库和解析库的使用再到数据存储,一步步把基础打好,然后再分门别类介绍了Ajax.动态页.验证码.App的爬取.识别等,还讲解了代 ...
- python实现bt下载器_使用Python编写基于DHT协议的BT资源爬虫
关于DHT协议 DHT协议作为BT协议的一个辅助,是非常好玩的.它主要是为了在BT正式下载时得到种子或者BT资源.传统的网络,需要一台中央服务器存放种子或者BT资源,不仅浪费服务器资源,还容易出现单点 ...
- Windows环境下基于python3 + selenium构建网络爬虫
文章目录 安装selenium 下载响应的driver 构建爬虫工程 安装selenium 由于我的Windows系统上安装的Anaconda,且包含两个版本python2和python3.因此,首先 ...
- python下tkinter模块和mysql构建图书管理系统实验
前言与准备 本次实验是大二数据库期末大作业,我采用的是python语言和mysql8.0.27制作的基于cs构架的数据库框架,由于之前从未了解过python语言,所以代码部分语言较为粗暴,未成年人请在 ...
最新文章
- 坐地铁就能学会的3种非常有趣的 Python 玩法
- 图片尺寸对分类迭代次数和准确率的影响
- CSP认证201412-1	门禁系统[C++题解]:哈希表
- ajax返回类型探讨
- 显示行号 visual studio 1006
- WPF动态改变主题颜色
- 试题17 方程的解(枚举法)
- combobox 属性、事件、方法
- 播放超1200w,仅21w粉的B站UP主靠带货也能引爆B站
- 详说ArcGIS之重采样技术图文解析
- 史上最全!20/21届春招/秋招 实习/校招 JAVA面试全攻略!复习回顾这一篇就够了!
- html复选框打钩行变颜色,Excel 单元格打勾会变颜色,开发工具的复选框这样玩...
- 深度学习细颗粒图像分析综述
- 智慧厕所空气净化设备异味除臭杀菌更彻底
- JavaScript设计模式——订阅者-发布者模式简单实现
- 四元数微分求角速度【离散】
- 2-10偶数乘2奇数乘3
- java计算时间差 毫秒_java 获取两个日期相差的毫秒数
- springboot表单验证
- 使用console打印图片,图案的样式
热门文章
- 极度丝滑!CentOS/Unbuntu系统下快速设置虚拟内存,一行命令快速搞定!!!
- Centos7 安装配置 tomcat 并设置自动启动
- Nginx使用HTTPS建立与上游服务器的网络通信
- Oracle 修改字符集 为ZHS16GBK
- android 存储方式简书,Android的多种数据存储方式
- C#LeetCode刷题之#160-相交链表(Intersection of Two Linked Lists)
- linux系统账户口令管理
- 将Excel中的数据导入到MySql数据库中
- 用 Python 写出这样的进度条,刷新了我对进度条的认知
- Python爬取网站上面的数据很简单,但是如何爬取APP上面的数据呢