python爬虫基本知识

爬虫简介

根据百度百科定义:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

随着大数据的不断发展,爬虫这个技术慢慢走入人们的视野,可以说爬虫是大数据应运而生的产物,至少我解除了大数据才了解到爬虫这一技术

随着数据的海量增长,我们需要在互联网上选取所需要的数据进行自己研究的分析和实验。这就用到了爬虫这一技术,下面就跟着小编一起初遇python爬虫!

一、请求-响应

在利用python语言实现爬虫时,主要用到了urllib和urllib2两个库。首先用一段代码说明如下:

 import urllib
 import urllib2
 url="http://www.baidu.com"
 request=urllib2.Request(url)
 response=urllib2.urlopen(request)
 print response.read()

我们知道一个网页就是以html为骨架,js为肌肉,css为衣服所构成的。上述代码所实现的功能就是把百度网页的源码爬取到本地。

其中,url为要爬取的网页的网址;request发出请求,response是接受请求后给出的响应。最后用read()函数输出的就是百度网页的源码。

二、GET-POST

两者都是向网页传递数据,最重要的区别是GET方式是直接以链接形式访问,链接中包含了所有的参数,当然如果包含了密码的话是一种不安全的选择,不过你可以直观地看到自己提交了什么内容。

POST则不会在网址上显示所有的参数,不过如果你想直接查看提交了什么就不太方便了,大家可以酌情选择。

POST方式:

 import urllib
 import urllib2
 values={'username':'2680559065@qq.com','Password':'XXXX'}
 data=urllib.urlencode(values)
 url='https://passport.csdn.net/account/login?from=http://my.csdn.net/my/mycsdn'
 request=urllib2.Request(url,data)
 response=urllib2.urlopen(request)
 print response.read()

GET方式:

import urllib
import urllib2
values={'username':'2680559065@qq.com','Password':'XXXX'}
data=urllib.urlencode(values)
url = "http://passport.csdn.net/account/login"
geturl = url + "?"+data
request=urllib2.Request(geturl)
response=urllib2.urlopen(request)
print response.read()

三、异常处理

处理异常时,用到了try-except语句。

import urllib2
 try:
   response=urllib2.urlopen("http://www.xxx.com")
 except urllib2.URLError,e:
   print e.reason

总结

以上所述是小编给大家介绍的python爬虫基本知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

您可能感兴趣的文章:

  • Python爬虫DOTA排行榜爬取实例(分享)
  • python爬虫之百度API调用方法
  • 基于python爬虫数据处理(详解)
  • Python爬虫DNS解析缓存方法实例分析
  • python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
  • python爬虫入门教程--快速理解HTTP协议(一)
(0)

相关推荐

  • 基于python爬虫数据处理(详解)

    一.首先理解下面几个函数 设置变量 length()函数 char_length() replace() 函数 max() 函数 1.1.设置变量 set @变量名=值 set @address='中国-山东省-聊城市-莘县'; select @address 1.2 .length()函数 char_length()函数区别 select length('a') ,char_length('a') ,length('中') ,char_length('中') 1.3. replace() 函数

  • Python爬虫DNS解析缓存方法实例分析

    本文实例讲述了Python爬虫DNS解析缓存方法.分享给大家供大家参考,具体如下: 前言: 这是Python爬虫中DNS解析缓存模块中的核心代码,是去年的代码了,现在放出来 有兴趣的可以看一下. 一般一个域名的DNS解析时间在10~60毫秒之间,这看起来是微不足道,但是对于大型一点的爬虫而言这就不容忽视了.例如我们要爬新浪微博,同个域名下的请求有1千万(这已经不算多的了),那么耗时在10~60万秒之间,一天才86400秒.也就是说单DNS解析这一项就用了好几天时间,此时加上DNS解析缓存,效果就

  • python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)

    前言 python爬虫系列文章的第3篇介绍了网络请求库神器 Requests ,请求把数据返回来之后就要提取目标数据,不同的网站返回的内容通常有多种不同的格式,一种是 json 格式,这类数据对开发者来说最友好.另一种 XML 格式的,还有一种最常见格式的是 HTML 文档,今天就来讲讲如何从 HTML 中提取出感兴趣的数据 自己写个 HTML 解析器来解析吗?还是用正则表达式?这些都不是最好的办法,好在,Python 社区在这方便早就有了很成熟的方案,BeautifulSoup 就是这一类问题

  • python爬虫入门教程--快速理解HTTP协议(一)

    前言 爬虫的基本原理是模拟浏览器进行 HTTP 请求,理解 HTTP 协议是写爬虫的必备基础,招聘网站的爬虫岗位也赫然写着熟练掌握HTTP协议规范,写爬虫还不得不先从HTTP协议开始讲起 HTTP协议是什么? 你浏览的每一个网页都是基于 HTTP 协议呈现的,HTTP 协议是互联网应用中,客户端(浏览器)与服务器之间进行数据通信的一种协议.协议中规定了客户端应该按照什么格式给服务器发送请求,同时也约定了服务端返回的响应结果应该是什么格式. 只要大家都按照协议规定方式发起请求和返回响应结果,任何人

  • python爬虫之百度API调用方法

    调用百度API获取经纬度信息. import requests import json address = input('请输入地点:') par = {'address': address, 'key': 'cb649a25c1f81c1451adbeca73623251'} url = 'http://restapi.amap.com/v3/geocode/geo' res = requests.get(url, par) json_data = json.loads(res.text) g

  • Python爬虫DOTA排行榜爬取实例(分享)

    1.分析网站 打开开发者工具,我们观察到排行榜的数据并没有在doc里 doc文档 在Javascript里我么可以看到下面代码: ajax的post方法异步请求数据 在 XHR一栏里,我们找到所请求的数据 json存储的数据 请求字段为: post请求字段 2.伪装浏览器,并将json数据存入excel里面 获取信息 将数据保存到excel中 3.结果展示 以上这篇Python爬虫DOTA排行榜爬取实例(分享)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • python爬虫基本知识

    爬虫简介 根据百度百科定义:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕虫. 随着大数据的不断发展,爬虫这个技术慢慢走入人们的视野,可以说爬虫是大数据应运而生的产物,至少我解除了大数据才了解到爬虫这一技术 随着数据的海量增长,我们需要在互联网上选取所需要的数据进行自己研究的分析和实验.这就用到了爬虫这一技术,下面就跟着小编一起初遇python

  • python爬虫(入门教程、视频教程) 原创

    python的版本经过了python2.x和python3.x等版本,无论哪种版本,关于python爬虫相关的知识是融会贯通的,我们关于爬虫这个方便整理过很多有价值的教程,小编通过本文章给大家做一个关于python爬虫相关知识的总结,以下就是全部内容: python爬虫的基础概述 1.什么是爬虫 网络爬虫,即Web Spider,是一个很形象的名字.把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛.网络蜘蛛是通过网页的链接地址来寻找网页的.从网站某一个页面(通常是首页)开始,读

  • python爬虫开发之使用python爬虫库requests,urllib与今日头条搜索功能爬取搜索内容实例

    使用python爬虫库requests,urllib爬取今日头条街拍美图 代码均有注释 import re,json,requests,os from hashlib import md5 from urllib.parse import urlencode from requests.exceptions import RequestException from bs4 import BeautifulSoup from multiprocessing import Pool #请求索引页 d

  • 学习Python爬虫前必掌握知识点

    常见的协议 http和https http协议: 超文本传输协议,是一个发布和接受HTML页面的方法,端口是80 https 协议:http协议的加密版本,在HTTP下加上了ssl层,端口是443 下面访问的是美团的官网: 可以看到端口是443 URL和RUI 常见的请求方式 http协议规定了浏览器与服务器进行数据交互过程中必须要选择一种交互方式 在http协议中定义了8中请求方式,常见的是get和post请求 get请求: 一般只从服务器获取数据下来,并不会对服务器资源产生任何的影响. 请求

  • Python爬虫基础之爬虫的分类知识总结

    一.通用爬虫 通用网络爬虫是搜索引擎抓取系统(Baidu.Google.Sogou等)的一个重要组成部分.主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份.为搜索引擎提供搜索支持. 第一步 搜索引擎去成千上万个网站抓取数据. 第二步 搜索引擎通过爬虫爬取到的网页,将数据存入原始页面数据库(也就是文档库).其中的页面数据与用户浏览器得到的HTML是完全-样的. 第三步 搜索引擎将爬虫抓取回来的页面,进行各种步骤的预处理:中文分词,消除噪音,索引处理... 搜索引擎在对信息进行组织

  • 零基础写python爬虫之爬虫框架Scrapy安装配置

    前面十章爬虫笔记陆陆续续记录了一些简单的Python爬虫知识, 用来解决简单的贴吧下载,绩点运算自然不在话下. 不过要想批量下载大量的内容,比如知乎的所有的问答,那便显得游刃不有余了点. 于是乎,爬虫框架Scrapy就这样出场了! Scrapy = Scrach+Python,Scrach这个单词是抓取的意思, Scrapy的官网地址:点我点我. 那么下面来简单的演示一下Scrapy的安装流程. 具体流程参照:http://www.jb51.net/article/48607.htm 友情提醒:

  • Python 爬虫学习笔记之正则表达式

    正则表达式的使用 想要学习 Python 爬虫 , 首先需要了解一下正则表达式的使用,下面我们就来看看如何使用. . 的使用这个时候的点就相当于一个占位符,可以匹配任意一个字符,什么意思呢?看个例子就知道 import re content = "helloworld" b = re.findall('w.',content) print b` 注意了,我们首先导入了 re,这个时候大家猜一下输出结果是什么?因为 . 相当于一个占位符,所以理所当然的这个时候的输出结果是 wo . *

  • Python 爬虫学习笔记之多线程爬虫

    XPath 的安装以及使用 1 . XPath 的介绍 刚学过正则表达式,用的正顺手,现在就把正则表达式替换掉,使用 XPath,有人表示这太坑爹了,早知道刚上来就学习 XPath 多省事 啊.其实我个人认为学习一下正则表达式是大有益处的,之所以换成 XPath ,我个人认为是因为它定位更准确,使用更加便捷.可能有的人对 XPath 和正则表达式的区别不太清楚,举个例子来说吧,用正则表达式提取我们的内容,就好比说一个人想去天安门,地址的描述是左边有一个圆形建筑,右边是一个方形建筑,你去找吧,而使

  • Python爬虫框架Scrapy实战之批量抓取招聘信息

    网络爬虫抓取特定网站网页的html数据,但是一个网站有上千上万条数据,我们不可能知道网站网页的url地址,所以,要有个技巧去抓取网站的所有html页面.Scrapy是纯Python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便- Scrapy 使用wisted这个异步网络库来处理网络通讯,架构清晰,并且包含了各种中间件接口,可以灵活的完成各种需求.整体架构如下图所示: 绿线是数据流向,首先从初始URL 开始,Scheduler 会将其

  • python爬虫入门教程之糗百图片爬虫代码分享

    学习python少不了写爬虫,不仅能以点带面地学习.练习使用python,爬虫本身也是有用且有趣的,大量重复性的下载.统计工作完全可以写一个爬虫程序完成. 用python写爬虫需要python的基础知识.涉及网络的几个模块.正则表达式.文件操作等知识.昨天在网上学习了一下,写了一个爬虫自动下载「糗事百科」里面的图片.源代码如下: 复制代码 代码如下: # -*- coding: utf-8 -*- # 上面那句让代码里支持中文 #---------------------------------

随机推荐