python爬虫实现爬取同一个网站的多页数据的实例讲解


Posted in Python onJanuary 18, 2021

对于一个网站的图片、文字音视频等,如果我们一个个的下载,不仅浪费时间,而且很容易出错。Python爬虫帮助我们获取需要的数据,这个数据是可以快速批量的获取。本文小编带领大家通过python爬虫获取获取总页数并更改url的方法,实现爬取同一个网站的多页数据。

一、爬虫的目的

从网上获取对你有需要的数据

二、爬虫过程

1、获取url(网址)。

2、发出请求,获得响应。

3、提取数据。

4、保存数据。

三、爬虫功能

可以快速批量的获取想要的数据,不用手动的一个个下载(图片、文字音视频等)

四、使用python爬虫爬取同一网站多页数据

1、需要定位至该标签并获得总页数

def get_page_size(soup):
  pcxt=soup.find('div',{'class':'babynames-term-articles'}).find('nav')
  pcxt1=pcxt.find('div',{'class':'nav-links'}).findAll('a')
  for i in pcxt1[:-1]:
    link=i.get('href')
    s=str(i)
  page=re.sub('<a href="','',s)
  page1=re.sub(link,'',page)
  page2=re.sub('">','',page1)
  page3=re.sub('</a>','',page2)
  pagesize=int(page3)
  print(pagesize)
  return pagesize
Pass

2、更改url来访问网址,也就是进行主函数的编写

if __name__ == '__main__':
    url="http://www.sheknows.com/baby-names/browse/a/"
    soup=get_requests(url)
    page=get_page_size(soup)
    for i in range(1,page+1):
      url1=url+"page/"+str(i)+"/"
      soup1=get_requests(url1)
      draw_base_list(soup1)

实例扩展:

import requests
from lxml import etree
import re

url="https://movie.douban.com/top250"
header = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36"}

allMovieList=[]
flag = True
while flag:
  html = requests.get(url, headers=header).text
  list = etree.HTML(html)
  lis = list.xpath('//ol[@class="grid_view"]/li')
  for oneSelector in lis:
    name = oneSelector.xpath("div/div[2]/div[1]/a/span[1]/text()")[0]
    score = oneSelector.xpath("div/div[2]/div[2]/div/span[2]/text()")[0]
    people = oneSelector.xpath("div/div[2]/div[2]/div/span[4]/text()")[0]
    people = re.findall("(.*?)人评价",people)[0]
    oneMovieList = [name,score,people]
    allMovieList.append(oneMovieList)
  #获取下一页地址
  try:
    next_url = list.xpath('//span[@class="next"]/a/@href')[0]
    if next_url:
      url = "https://movie.douban.com/top250"+ next_url
  except:
    flag = False
print(allMovieList)

到此这篇关于python爬虫实现爬取同一个网站的多页数据的实例讲解的文章就介绍到这了,更多相关python爬虫如何实现爬取同一个网站的多页数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中使用copy模块实现列表(list)拷贝
Apr 14 Python
Python计算三角函数之asin()方法的使用
May 15 Python
Python实现的使用telnet登陆聊天室实例
Jun 17 Python
深入理解Python中的super()方法
Nov 20 Python
使用python编写简单的小程序编译成exe跑在win10上
Jan 15 Python
python 实现对文件夹中的图像连续重命名方法
Oct 25 Python
基于wxPython的GUI实现输入对话框(1)
Feb 27 Python
Django 框架模型操作入门教程
Nov 05 Python
python函数不定长参数使用方法解析
Dec 14 Python
django执行原始查询sql,并返回Dict字典例子
Apr 01 Python
Python定义一个Actor任务
Jul 29 Python
python图片合成的示例
Nov 09 Python
python中四舍五入的正确打开方式
Jan 18 #Python
PyQt5中QSpinBox计数器的实现
Jan 18 #Python
全网最细 Python 格式化输出用法讲解(推荐)
Jan 18 #Python
PyQt实现计数器的方法示例
Jan 18 #Python
Python实现邮件发送的详细设置方法(遇到问题)
Jan 18 #Python
Python实现一个论文下载器的过程
Jan 18 #Python
利用python为PostgreSQL的表自动添加分区
Jan 18 #Python
You might like
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
php自定义函数截取汉字长度
2014/05/15 PHP
php5.2以下版本无json_decode函数的解决方法
2014/05/25 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
PHP的Yii框架的基本使用示例
2015/08/21 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
2017/05/05 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
YII2框架中日志的配置与使用方法实例分析
2020/03/18 PHP
javascript下拉列表中显示树形菜单的实现方法
2015/11/17 Javascript
详解AngularJS中module模块的导入导出
2015/12/10 Javascript
Bootstrap组件学习之导航、标签、面包屑导航(精品)
2016/05/17 Javascript
AngularJS 实现弹性盒子布局的方法
2016/08/30 Javascript
javascript稀疏数组(sparse array)和密集数组用法分析
2016/12/28 Javascript
js+html制作简单验证码
2017/02/16 Javascript
利用node.js如何搭建一个简易的即时响应服务器
2017/05/28 Javascript
Vue.js移动端左滑删除组件的实现代码
2017/09/08 Javascript
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
Vue 中mixin 的用法详解
2018/04/23 Javascript
[11:57]《一刀刀一天》第十七期:TI中国军团加油!
2014/05/26 DOTA
详解Python迭代和迭代器
2016/03/28 Python
Python实现求两个数组交集的方法示例
2019/02/23 Python
如何用OpenCV -python3实现视频物体追踪
2019/12/04 Python
python爬虫实现获取下一页代码
2020/03/13 Python
html5 Canvas绘制线条 closePath()实例代码
2012/05/10 HTML / CSS
家得宝加拿大家装网上商店:The Home Depot加拿大
2016/08/27 全球购物
美国最大的袜子制造商和零售商:Renfro Socks
2017/09/03 全球购物
电气工程师岗位职责
2014/01/01 职场文书
母亲节感恩寄语
2014/02/21 职场文书
个人授权委托书范本
2014/04/03 职场文书
学校教师读书活动总结
2014/07/08 职场文书
大学生安全责任书
2014/07/25 职场文书
2015年世界环境日活动总结
2015/02/11 职场文书
房贷工资证明范本
2015/06/12 职场文书
结婚十年感言
2015/07/31 职场文书
话题作文之成长
2019/12/09 职场文书
python Tkinter模块使用方法详解
2022/04/07 Python