Python使用requests及BeautifulSoup构建爬虫实例代码
作者:sober_qianyang 时间:2021-08-13 11:33:13
本文研究的主要是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()
代码测试可用,实现效果:
来源:http://blog.csdn.net/qy20115549/article/details/78111615
标签:python,requests,beautifulsoup,爬虫
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
python如何变换环境
2021-06-02 19:19:44
![](https://img.aspxhome.com/file/2023/7/118647_0s.png)
python的自变量选择(所有子集回归,后退法,逐步回归)
2022-09-23 19:09:59
![](https://img.aspxhome.com/file/2023/1/109421_0s.gif)
Python3.8.2安装包及安装教程图文详解(附安装包)
2021-11-17 19:35:14
![](https://img.aspxhome.com/file/2023/1/68481_0s.jpg)
python提效小工具之统计xmind用例数量(源码)
2021-11-26 21:42:44
![](https://img.aspxhome.com/file/2023/6/72246_0s.png)
超级链接中MailTo的语法
2008-08-29 13:00:00
使用VS2005调试ASP程序方法
2007-11-02 09:56:00
![](https://img.aspxhome.com/file/UploadPic/200711/2/200711210317494s.jpg)
一份python入门应该看的学习资料
2023-04-08 15:09:57
![](https://img.aspxhome.com/file/2023/7/109987_0s.jpg)
提升JavaScript运行速度之循环篇[译]
2009-02-20 12:54:00
keras多显卡训练方式
2022-05-01 02:50:21
网站鼠标变变变!
2010-10-20 20:09:00
Python学习小技巧之利用字典的默认行为
2021-10-10 23:48:29
python3.X 抓取火车票信息【修正版】
2022-01-26 01:24:53
![](https://img.aspxhome.com/file/2023/9/107529_0s.png)
python对绑定事件的鼠标、按键的判断实例
2021-05-20 03:12:58
asp关键词屏蔽过滤函数代码
2010-05-04 16:32:00
Python中if __name__==‘__main__‘用法详情
2021-07-18 02:38:20
![](https://img.aspxhome.com/file/2023/1/67341_0s.jpg)
显示/隐藏引出的CSS Bug
2010-10-20 20:13:00
numpy数组之存取文件的实现示例
2021-02-20 11:32:57
Python全栈之文件函数和函数参数
2023-05-11 02:28:21
python basemap 画出经纬度并标定的实例
2023-08-23 23:26:40
php floor()函数案例详解
2023-06-14 16:13:03