Python爬虫——网页数据抓取入门教学

简介


  1. 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者):
    是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。其实通俗的讲就是通过程序去获取web页面上自己想要的数据,也就是自动抓取数据。
  2. 爬虫可以做什么?
    你可以用爬虫爬图片,爬取视频等等你想要爬取的数据,只要你能通过浏览器访问的数据都可以通过爬虫获取。当你在浏览器中输入地址后,经过DNS服务器找到服务器主机,向服务器发送一个请求,服务器经过解析后发送给用户浏览器结果,包括html,js,css等文件内容,浏览器解析出来最后呈现给用户在浏览器上看到的结果
    所以用户看到的浏览器的结果就是由HTML代码构成的,我们爬虫就是为了获取这些内容,通过分析和过滤html代码,从中获取我们想要资源。

页面获取

1) 根据URL获取网页

  • URL处理模块(库)
    import urllib.request as req
  • 创建一个表示远程url的类文件对象
    req.urlopen(' ')
  • 如同本地文件一样读取内容
import urllib.request as req
# 根据URL获取网页:
# http://www.hnpolice.com/
url = 'http://www.hnpolice.com/'
webpage = req.urlopen(url) # 按照类文件的方式打开网页
# 读取网页的所有数据,并转换为uft-8编码
data = webpage.read().decode('utf-8')
print(data)

2)网页数据存入文件

# 将读取的网页数据写入文件:
outfile = open("enrollnudt.txt", 'w') # 打开文件
outfile.write(data) # 将网页数据写入文件
outfile.close()

此时我们从网页中获取的数据已保存在我们指定的文件里,如下图


网页获取

从图中可以看出,网页的所有数据都存到了本地,但是我们需要的数据大部分都是文字或者数字信息,而代码对我们来说并没有用处。那么我们接下来要做的是清除没用的数据。(在这里我将获取警院新闻中的内容)

3)提取内容

  1. 分析网页,寻找所需要的内容“警院新闻”

  2. 内容范围

    • <li><a href="show.aspx?id=24797&cid=153" target="_blank"> ...</div>
  3. 如何将表格中的内容都提取出来?

    • 导入re包 (正规表达式包)
      import re
      re.findall (pattern, string [, flags] )
    • 以列表的形式返回string里匹配pattern的不重叠
      的子串
      • string会被从左到右依次扫描,返回的列表也是从左到右
        一次匹配到的
    • 如果pattern里含有组的话,那么会返回匹配到的
      组的列表


      正规表达式
  4. 匹配使用正规表达式
    '<li><a href="show.aspx?id=24797&amp;cid=153" target="_blank">(.*?)</div>'

  5. 数据清洗

  • 数据前后清洗x.strip()
  • 数据内部清洗x.replace('&nbsp; ', '')

至此,所需的内容已经获取到本地,爬虫基本完成。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 29,139评论 1 45
  • 爬虫概述 1. 目录清单 爬虫简介 通用爬虫和聚焦爬虫 网络请求那些事儿 网络数据抓包分析 2. 章节内容 2.1...
    小皇帝s阅读 777评论 0 1
  • 声明:本文讲解的实战内容,均仅用于学习交流,请勿用于任何商业用途! 一、前言 强烈建议:请在电脑的陪同下,阅读本文...
    Bruce_Szh阅读 13,078评论 6 28
  • 七绝 南华寺 (新韵) 曹溪名刹访禅宗, 暮色烟岚看水松。 明镜菩提说六祖, 深山古寺响晨钟。 韶关曹溪南华寺,有...
    老爸的杂拌儿糖阅读 1,492评论 11 30
  • 这一周周日JAVA阶段考核截止,自己的游戏还差很多;微团课大赛要做一个PPT并讲解,周一截止;学生会周末义务维修值...
    李明原_强化班阅读 1,950评论 5 0

友情链接更多精彩内容