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

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

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

简书首页

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

1)环境准备

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

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语言学习的起点,来了解和学习这门"人工智能的第一语言”,进而打开爬虫、数据分析、数据可视化、深度学习、人工智能的大门。

python爬虫代码-Python爬虫入门(01) -- 10行代码实现一个爬虫相关推荐

  1. 爬虫python代码-Python爬虫入门(01) -- 10行代码实现一个爬虫

    跟我学习Python爬虫系列开始啦.带你简单快速高效学习Python爬虫. 一.快速体验一个简单爬虫 以抓取简书首页文章标题和链接为例 简书首页 就是以上红色框内文章的标签,和这个标题对应的url链接 ...

  2. python加密敏感信息_仅需10行代码,使用python加密用户敏感数据

    原标题:仅需10行代码,使用python加密用户敏感数据 数据分析师必须要遵守的一个规则就是数据保密,但在跨部门沟通的时候,难免会有数据泄露的情况,所以,对于用户的姓名.手机号.地址等敏感信息,一般需 ...

  3. Java学习的快速入门:10行代码学JQuery

    生活在快速发展时代的我们,如果不提速可能稍不留神就被时代淘汰了.快节奏的时代成就了快餐,亦成就了速成教育.尤其是身处互联网行业的我们,更新换代的速度更是迅速,快速掌握一门技术已经成为潮流趋势.怎样才能 ...

  4. Python+moviepy使用manual_tracking和headblur函数10行代码实现视频人脸追踪打马赛克

    ☞ ░ 前往老猿Python博文目录 ░ 一.背景知识 1.1.headblur简介 追踪人脸打马赛克需要使用headblur函数. 调用语法: headblur(clip,fx,fy,r_zone, ...

  5. 10 行代码提取复杂 Excel 数据

    [摘要] 把 Excel 文件导入关系数据库是数据分析业务中经常要做的事情,但许多 Excel 文件的格式并不规整,需要事先将其中的数据结构化后再用 SQL 语句写入数据库.而一般情况下,结构化的工作 ...

  6. 10行代码集2000张美女图,Python爬虫120例,再上征途

    <Python 爬虫 120 例>专栏简介 Python 爬虫 100 例教程,编写自 2018-07-30 到 2020-10-28,将近 800 天,至今依旧是 Python 爬虫领域 ...

  7. python爬虫爬取新闻实战01:小白如何迅速学会爬虫爬取上千条新闻

    爬虫爬取新闻实战01:小白如何迅速学会爬虫爬取千条新闻 文章目录 爬虫爬取新闻实战01:小白如何迅速学会爬虫爬取千条新闻 1.前言 2 .爬虫原理介绍 2.1.图片爬虫 2.2 文字爬虫 3.用八爪鱼 ...

  8. Python编程学习第一篇——Python零基础快速入门(三)——10行代码画朵花

    上一节讲了一些Python编程的一些基础知识,从这节开始,我们将跟随一些实际的小程序示例,进入正式的编程学习.       下面我们就来介绍一下今天这个只有10行代码的小程序,先来看一下它的运行效果, ...

  9. python 网页自动处理_推荐一款 10 行 Python 代码实现网页自动化工具

    各种各样的网站在我们日常工作和学习中占据着举足轻重的地位,学习.影音娱乐.查询资料.协同办公,越来越多的任务都被迁移到浏览器 因此,网页也蕴含着很多有价值.我们能够用得到的资源 例如,数据.歌曲.影视 ...

最新文章

  1. 短时能量法代码c语言,[蓝桥杯][算法提高]能量项链 (Python代码)
  2. Java算法--插入排序算法
  3. SpringBoot详解(一)-快速入门
  4. python求同构数_用c语言求1到1000的同构数_后端开发
  5. mysql-connector-java 6.x配置问题解决方案
  6. 100m光纤测速多少正常_光纤收发器常见故障问题排查方法总结大全
  7. 话里话外:中小型装备制造企业竞争优势构建之路
  8. vue.js 源代码学习笔记 ----- decoder
  9. 【效率】专为Win7系统设计的极简番茄计时器 - MiniPomodoro (附源码)
  10. 密码学基础(五):常见名词解释和密码学标准
  11. import matplotlib.pyplot as plt
  12. mysql 2037年,正确的方法来存储2037年之后的MySQL日期
  13. ADS1220 24位高精度ADC芯片驱动
  14. 经营好你的人际关系网
  15. ps平面设计作业_海报设计
  16. 高德地图marker标点数据量太大造成卡顿的解决方案
  17. HDU4544 湫湫系列故事——消灭兔子
  18. 谈谈K8S Pod Eviction 机制
  19. 高中计算机听课总结,中学新信息技术老师听课心得体会五篇
  20. 能被9和11整除的数的特征

热门文章

  1. Tableau可视化学习笔记:day11-12
  2. tensorflow保存模型参数文件pb查看
  3. win10安装pycocotools遇到的问题
  4. FTP Client Setup
  5. lnmp + swoole 安装
  6. mybatis(数据库增删改查)
  7. 白鹭引擎 - 矢量绘图 ( graphics )
  8. eclipse maven项目导入Intellij问题处理
  9. CSAPP阅读进度日记
  10. bandwidth 0.32k 发布,内存带宽测试工具