爬虫主要做两件事

①模拟计算机对服务器发起Request请求

②接收服务器端的Response内容并解析,提取所需的信息

互联网页面错综复杂,一次请求不能获取全部信息。就需要设计爬虫的流程。

本书主要介绍两种流畅①多页面爬虫流程②跨页面爬虫流程

多页面爬虫流程:

(1)手动翻页并观察各页面的URL构成特点,构造出所有页面的URL存入列表

(2)根据URL列表依次循环取出URL

(3)定义爬虫函数

(4)循环调用爬虫函数,存储数据。

(5)循环结束,结束爬虫程序。

跨页面的爬虫程序:

(1)定义爬取函数爬取页面中(列表页)的专题URL

(2)将专题URL存入列表中作为种子URL

(3)定义爬虫函数

(4)根据种子URL循环调用爬虫函数,存储数据。

(5)循环结束,结束爬虫程序。

两种流程区别:自己构造URL列表,爬取页面URL列表

python爬虫之路——初识爬虫原理的更多相关文章

  1. python爬虫之路——初识爬虫三大库,requests,lxml,beautiful.

    三大库:requests,lxml,beautifulSoup. Request库作用:请求网站获取网页数据. get()的基本使用方法 #导入库 import requests #向网站发送请求,获 ...

  2. python爬虫之路——初识基本页面构造原理

    通过chrome浏览器的使用简单介绍网页构成 360浏览器使用右键审查元素,Chrome浏览器使用右键检查,都可查看网页代码. 网页代码有两部分:HTML文件和CSS样式.其中有<script& ...

  3. python爬虫之路——初识函数与控制语句

    介绍python函数的定义与使用方法,介绍Python的常用控制语句:判断和循环 函数: 格式 def   函数名(参数1,参数2): return ‘结果’ 判断语句:就是多选一 二选一: if c ...

  4. python爬虫之路——初识数据库存储

    非关系型数据库:MongoDB.关系型数据库:MySQL 关系型和非关系型的区别: 安装: 使用: 应用场景: mongoDB是一种非关系型数据库,分为四大类:键值存储数据库,列存储数据库,文档型数据 ...

  5. python爬虫之路——初识lxml库和xpath语法

    lxml库:是xml解析库,也支持html文档解析功能,实用功能:自动修正补全html代码. 使用流程:①导入lxml中的etree库,②利用etree.HTML(文件名)或etree.parse(本 ...

  6. python爬虫系列之初识爬虫

    前言 我们这里主要是利用requests模块和bs4模块进行简单的爬虫的讲解,让大家可以对爬虫有了初步的认识,我们通过爬几个简单网站,让大家循序渐进的掌握爬虫的基础知识,做网络爬虫还是需要基本的前端的 ...

  7. Python学习之路——初识Python

    一.第一个程序Hello World: 1.打印输出Hello World: Python2打印方法: >>> print "hello world"hello ...

  8. python学习之路 初识xml

    import requests from xml.etree import ElementTree as ET r = requests.get('http://www.webxml.com.cn// ...

  9. Python爬虫之路——简单网页抓图升级版(添加多线程支持)

    转载自我的博客:http://www.mylonly.com/archives/1418.html 经过两个晚上的奋斗.将上一篇文章介绍的爬虫略微改进了下(Python爬虫之路--简单网页抓图),主要 ...

随机推荐

  1. minihttp安装配置ssl和c语言实现cgi

    概述:参考了大牛们的方法,结合自己的环境做了修改,主要是讲:minihttp安装配置ssl和c语言实现cgi接收字符串并且保存系统环境:centos6.5 开发版 依赖软件包: mini_httpd- ...

  2. 4-数组、指针与字符串1.3-this指针

    this指针时一个隐含于每一个类的成员函数中的特殊指针(包括构造函数和析构函数),它用于指向正在被成员函数操作的对象. this指针明确地指出了成员函数当前所操作的数据所属的对象.实际过程是,当通过一 ...

  3. js如何判断当前文本的输入状态——中文输入法的那些坑

    相信各位在平时接需求的时候肯定会遇到这样的一些需求,例如,要求输入框限制输入长度,限制输入类型,限制只能英文输入,限制只能输入大写字母等等,这时候我们一般的思路无非两种,一种是弹出特定的键盘,第二种是 ...

  4. Git提交与恢复

    Git提交与恢复 提交修改 git add --all # 提交所有修改文件 git add file file # 提交部分修改文件 $ git status On branch master Yo ...

  5. 938. Range Sum of BST

    Given the root node of a binary search tree, return the sum of values of all nodes with value betwee ...

  6. hdu1394(枚举/树状数组/线段树单点更新&区间求和)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1394 题意:给出一个循环数组,求其逆序对最少为多少: 思路:对于逆序对: 交换两个相邻数,逆序数 +1 ...

  7. 洛谷P1313 计算系数

    P1313 计算系数 题目描述 给定一个多项式(by+ax)^k,请求出多项式展开后x^n*y^m 项的系数. 输入输出格式 输入格式: 输入文件名为factor.in. 共一行,包含5 个整数,分别 ...

  8. django后台管理系统(admin)的简单使用

    目录 django后台管理系统的使用 检查配置文件 检查根urls.py文件 启动项目,浏览器输入ip端口/admin 如: 127.0.0.1/8000/admin 回车 注册后台管理系统超级管理 ...

  9. 解决windows下nginx中文文件名乱码

    我的根目录文件夹放在d盘work文件夹下,一般这样配置 nginx\conf\nginx.conf location / { root D:/work; index index_bak.html; a ...

  10. C# 无视大小写比价字符串以及字符串大小写转换

    //C#通过ToUpper()方法将字符串转换成大写,代码如下: string sentence= "this is in upper case."; Console.WriteL ...