Skip to main content
 Web开发网 » 编程语言 » Python语言

如何用python爬取网站数据?

这里简单介绍一下吧,以抓取网站静态、动态2种数据为例,实验环境win10+python3.6+pycharm5.0,主要内容如下:

抓取网站静态数据(数据在网页源码中):以糗事百科网站数据为例

1.这里假设我们抓取的数据如下,主要包括用户昵称、内容、好笑数和评论数这4个字段,如下:

如何用python爬取网站数据?  Python网络爬虫 第1张

对应的网页源码如下,包含我们所需要的数据:

如何用python爬取网站数据?  Python网络爬虫 第2张

2.对应网页结构,主要代码如下,很简单,主要用到requests+BeautifulSoup,其中requests用于请求页面,BeautifulSoup用于解析页面:

如何用python爬取网站数据?  Python网络爬虫 第3张

程序运行截图如下,已经成功爬取到数据:

如何用python爬取网站数据?  Python网络爬虫 第4张

抓取网站动态数据(数据不在网页源码中,json等文件中):以人人贷网站数据为例

1.这里假设我们爬取的是债券数据,主要包括年利率、借款标题、期限、金额和进度这5个字段信息,截图如下:

如何用python爬取网站数据?  Python网络爬虫 第5张

打开网页源码中,可以发现数据不在网页源码中,按F12抓包分析时,才发现在一个json文件中,如下:

如何用python爬取网站数据?  Python网络爬虫 第6张

2.获取到json文件的url后,我们就可以爬取对应数据了,这里使用的包与上面类似,因为是json文件,所以还用了json这个包(解析json),主要内容如下:

如何用python爬取网站数据?  Python网络爬虫 第7张

程序运行截图如下,已经成功抓取到数据:

如何用python爬取网站数据?  Python网络爬虫 第8张

至此,这里就介绍完了这2种数据的抓取,包括静态数据和动态数据。总的来说,这2个示例不难,都是入门级别的爬虫,网页结构也比较简单,最重要的还是要会进行抓包分析,对页面进行分析提取,后期熟悉后,可以借助scrapy这个框架进行数据的爬取,可以更方便一些,效率更高,当然,如果爬取的页面比较复杂,像验证码、加密等,这时候就需要认真分析了,网上也有一些教程可供参考,感兴趣的可以搜一下,希望以上分享的内容能对你有所帮助吧。

评论列表暂无评论
发表评论
微信