怎么用python爬数据?python爬虫基础介绍!

如果说当下最热门的语言,那非属 python 不可。如果说 python 最火热的方向是哪个,那么爬虫绝对有一席之地。现在的许多 python 培训课程,都喜欢拿 python 爬虫来增加学员的学习兴趣。那么,怎么用 python 爬取数据?小编接下来带你了解一个 python 爬虫的开发流程。

小编先放上一个示例代码(以当当好评榜 TOP500 为例),以下介绍基于该代码进行介绍。

import requests  # 引入request库进行页面请求
from requests.exceptions import RequestException  # 引入RequestException来捕获request可能出现的异常
import re  # 引入re库来进行正则匹配
import json  # 引入json 来进行json格式转化


def get(url):  # 将请求方法封装,方便使用try语句捕捉异常
    try:
        response = requests.get(url)  # 使用request的get方法获取响应流
        if response.status_code == 200:  # 处理响应流,如果不是200响应,则返回None
            return response.text  # 将响应流以文本方式返回
        return None
    except RequestException:
        return None


def parse(text):  # 将正则匹配方法封装,使代码模块化
    pattern = re.compile('<li>.*?list_num.*?>(.*?)</div>.*?pic.*?src="(.*?)".*?/></a>.*?name"><a.*?title="('
                         '.*?)">.*?tuijian">(.*?)</span>.*?publisher_info.*?title="(.*?)".*?biaosheng.*?<span>('
                         '.*?)</span>.*?</li>', re.S)  # 设定正则表达式匹配规则
    items = re.findall(pattern, text)  # 使用正则匹配对传入的text文本进行正则匹配,并将匹配成功的结果保存在items
    return items  # 将匹配的结果返回


if __name__ == "__main__":
    target_url = "http://bang.dangdang.com/books/fivestars/"  # 目标爬取的页面url
    html = get(target_url)  # 使用封装好的get方法将整个目标HTML页面爬取下来
    for item in parse(html):  # 使用封装好的正则匹配方法对目标HTML进行正则匹配,然后用一个循环将结果进行处理
        print(item)
        # 接下来是将结果写入txt文件的操作
        with open('book.txt', 'a', encoding='UTF-8') as f:
            f.write(json.dumps(item, ensure_ascii=False) + '\n')  # 使用json库的dumps方法将列表对象转变成json对象(字符串),然后写入文本
            f.close()

爬虫开发第一步:网页分析

爬虫开发的第一步,是对目标网页进行分析,首先要知道你需要的目标数据在哪里,这里使用开发者工具查看整个页面结构,发现目标数据在一个 ​<li>​ 元素中,所以开发思路是,将这个页面的数据获取下来,然后获取数据中的 ​<li>​ 元素(里面的有用的数据)。

f12开发者工具进行元素定位

爬虫开发第二步,数据爬取

经过第一步的分析,我们已经大致有了爬虫的思路了,所以现在要做的,就是把这个页面爬取下来。这时候 request 库出场了。使用 request 的 ​get() ​方法,可以将目标页面的 html 爬下来。得到了目标页面的 html(代码中将其存储在 html 字符串中)。就可以进行接下来的操作了。

爬虫开发第三步,数据处理

使用正则表达式,匹配代码中的目标数据(也就是之前分析的li元素里的有用的数据)。并将其放进一个 ​items​ 列表中。完成到这一步,数据的爬取分析也就基本结束了。只要将爬取的结果进行保存就可以了。

爬虫开发第四步,数据保存

小编这里使用python自带的文件读写函数,将数据以json的格式保存在一个叫 ​book.txt​ 的文件中。

小结

现在大多数网页爬虫的开发方式基本都是上面的四步,python 的爬虫结构也大同小异。不过随着更多更好的工具出现,以及网站反爬意识的加强,最新的爬虫往往需要更好开发工具库和更多的配置。

这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!

CSDN大礼包:全网最全《全套Python学习资料》免费分享🎁

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值