爬虫

  1. 什么是爬虫??
    爬虫:网络爬虫机器人,从互联网自动抓取数据的程序
    理论上:通过浏览器看到的数据,我们一般都是可以获取到的

  2. 爬虫有什么作用:
    1).搜索引擎
    2.)商品比价(慧慧购物助手)
    3).知乎的数据分析平台(知乎专栏,数据冰山)
    4.)如何去写一个爬虫???
    网页的三大特征:
    1).每一个网页都有一个唯一的url(统一资源定位符),来进行定位
    2).网页都是通过HTML(超文本)文本展示的
    3).所有的网页都是通过HTTP<超文本传输协议>(HTTPS)协议来传输的

  3. 爬虫的流程:
       1).分析网站,得到目标url
       2).根据url,发起请求,获取页面的HTML源码
       3.)从页面源码中提取数据
         a.提取到目标数据,做数据的赛选和持久化存储
         b.从页面中提取到新的url地址,继续执行第二部操作
       4).爬虫结束:所有的目标url都提取完毕,并且得到数据了,再也没有其他请求任务了,这是意味着爬虫结束

  1. OSI七层协议:从上往下:

    1). 应用层:为用户的应用程序提供网络服务的(http,https,ftp....)
    2).表示层:负责端到端的数据信息可以被另一个主机所理解和识别,并且按照一定的格式将信息传递到会话层
    3).会话层:会话层是管理主机之间的会话进程,负责建立,管理,和终止会话进程
    4).传输层:进行数据传输的(TCP UDP)
             tcp udp
    传输方式上   面向连接的      非面向连接的
    传输的数据   传输的是数据流    传输的是数据包(可能会出现丢包)
    传输的效率    慢          快
    传输的稳定性   高          低

    5).网络层: 路由器
    6).数据链路层: 网桥 交换机
    7).物理层: 网线 网卡 集线器 中继器

     发起请求:
     会携带请求头:
    

url:发起请求的url地址
request.urlopen():使用urlopen方法模拟浏览器发起请求
data=None, 默认情况为None,表示发起的是一个get请求,不为None,则发起的是一个post请求
headers={},设置请求头(headers对应的数据类型是一个字典)
origin_req_host=None, (指定发起请求的域)
unverifiable=False,忽略SSL认证
method=None:指定发起请求的方式
'User-Agent':模拟浏览器进行请求
'Cookie':存储在浏览器里面的,使用cookie表明用户的身份
'Refere':说明当前的请求是从哪个页面发起的
read()方法读取文件全部内容,返回字符串(注意我们在使用read()获取响应结果的时候,执行一次后,下次在执行就没有数据了)
将获取到的二进制数据,转换为字符串decode str_html = b_html.decode('utf-8')

  1. 爬取某个关键字(中文)的数据------通过寻找关键字(中文) 爬取数据

  2. 在get请求中有中文

  3. 转化为URL编码格式 quote

  4. 在涉及到有多个wd的中文时
    a.使用字典的键值对来进行编码
    b.创建一个字典 用parse下的模块 urlencode方法 将一个字典类型的参数转化为url编码的格式

  5. 将域和转化后的编码拼接 组合成一个完整的url地址

  6. 在有完整的url编码后 开始爬取数据
    发起请求的方法(def xxxx(url)) 创建一个参数发起请求

  7. 先设置请求头
    req_header = {User-Agent}

  8. 设置请求头前需要请求对象 创建一个对象
    req

  9. 发起请求 获得一个响应
    response =

  10. 响应后 判断状态 ==200 就行

  11. 获得的数据是二进制的bytes 转换成中文 将获取的数据返回到html中 return response.read().decode('utf-8')

  12. 存储数据到本地
    创建文档
    filename = '第'+ str(page)+'页'+kw+'.html' #建文档名
    save_page_html(html,filename) #存储数据 需要将数据存储到本地 使用def save_page_html
    数据存储的位置
    文件读写操作
    with open('get请求url出现中文——中获得的数据'/+filename,'w') as file:
    file.write(html)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容

  • HTTP基本原理 URI、URL、URN(Uninform Resource) URI(Identifier):统...
    GHope阅读 2,059评论 2 26
  • 1. 概述 本文主要介绍网络爬虫,采用的实现语言为Python,目的在于阐述网络爬虫的原理和实现,并且对目前常见的...
    Lemon_Home阅读 2,723评论 0 21
  • 什么是爬虫? 就是一段自动获取互联网数据的程序 ( 网络爬虫就是为其提供信息来源的程序 ),,,请求网站并提取...
    恬恬i阿萌妹O_o阅读 430评论 0 0
  • 声明:本文讲解的实战内容,均仅用于学习交流,请勿用于任何商业用途! 一、前言 强烈建议:请在电脑的陪同下,阅读本文...
    Bruce_Szh阅读 12,674评论 6 28
  • 1、什么是爬虫?就是一段自动获取互联网数据的程序2.、爬虫有什么用途?搜索引擎比价工具(慧慧购物助手)大的咨询网站...
    YU不忘初心阅读 545评论 0 0