Python爬虫入门 -- 10行代码实现一个爬虫

跟我学习Python爬虫系列开始啦。带你简单快速高效学习Python爬虫。

一、快速体验一个简单爬虫

以抓取简书首页文章标题和链接为例

就是以上红色框内文章的标签,和这个标题对应的url链接。当然首页还包括其他数据,如文章作者,文章评论数,点赞数。这些在一起,称为结构化数据。我们先从简单的做起,先体验一下Python之简单,之快捷。

1)环境准备

当然前提是你在机器上装好了Python环境,初步掌握和了解Python语法。如果还没有装好Python环境,对Python语言法不了解,可以先看《然学科技 Python基础系列》文章:

2)安装相应包

快速入门我们使用的是requests包和BeautifulSoup包。简单解释一下,requests功能强大,代码少,封装了网络请求request(发起请求)和response(网络响应),request就像打开浏览器地址栏输入你想要访问的网站,浏览器中马上就可以看到内容一样(response)。

爬虫可以抓到大量数据(结构化的数据),存到数据库中(或excel, csv文件),再进行清洗整理,进行其他工作,如数据分析等。数据抓取也是数据分析前提和基础。

安装requests

pip install requests

安装beautifulsoup4

pip install beautifulsoup4 

可以查看一下你安装了哪些包

pip list

3)代码:

# _*_ coding:utf-8 _*_

import requests

from bs4 import BeautifulSoup

URL='http://www.jianshu.com'

def simple_crawel():

    html = requests.get(URL).content

    soup = BeautifulSoup(html, 'lxml')

    titles = soup.find_all('a',class_="title")

    for t in titles:

        print t.text+' -->>> '+'https://www.jianshu.com'+t['href']

if __name__ == '__main__':

    simple_crawel()

运行这个文件:

python demo.py

结果:

抓取到的数据

代码解析:

html = requests.get(URL).content

发起一个请求,获到到页面的内容(文本),对的就是一行代码就抓取到网页的全部内容。下一步就是要对页面进行解析。

titles = soup.find_all('a',class_="title")

这行代码表示,寻找页面上所有class属性为title的a标签,就是文章标题所对应的标签。怎样才能找到文章标题对就是的哪个标题呢?很简单,在chrome浏览器中右键“检查”中查看就知道。

然后再循环遍历,就得到每一个文章标题的a标签对象,在循环中取出文章标题的内容'text'和链接href就行了。

就这么简单,10行代码就抓取到首页热门文章的标题和URL打印在屏幕上。

二、学习爬虫需要的相关知识

代码很少,涉及到的知识点却很多。如果想要入门系统学习Python爬虫需要哪些知识呢?

Python语言基础

Python爬虫相关库

HTTP请求响应模式

HTML基础(HTML+CSS)

数据库基础

以上内容,都会在《跟我学Python爬虫》逐步讲。也可以把Python爬虫作为Python语言学习的起点,来了解和学习这门“人工智能的第一语言”,进而打开爬虫、数据分析、数据可视化、深度学习、人工智能的大门。

转自:http://www.baobaoshequ.com/article/4530

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值