码迷,mamicode.com
首页 > Web开发 > 详细

百度搜索引擎关键字URL采集爬虫优化行业定投方案高效获得行业流量-笔记篇

时间:2018-05-02 19:13:53      阅读:427      评论:0      收藏:0      [点我收藏+]

标签:分析   右键   取数   流程   服务器   spi   怎么   模块   步骤   

需要结合:《百度搜索引擎关键字URL采集爬虫优化行业定投方案高效获得行业流量-代码篇》一起学习
 
#百度搜索引擎关键字URL采集爬虫优化行业定投方案高效获得行业流量
 
#知识点
‘‘‘
1 网络爬虫
2 Python开发网络爬虫
3 requests库
4 文件操作
‘‘‘
 
#项目结构
‘‘‘
key.txt                 关键字文档,根据这个文档中的关键字进行爬取
demo.py               爬虫文件内容了
res/软件开发.txt    爬虫采集来的URL
‘‘‘
 
#在Pycharm中新建项目:C:...0501
#该项目暂时没有多线程和多进程
#在项目中新建脚本spider.py
 
#版本信息
‘‘‘
1 环境              python3
2 第三方模块  requests     安装方法 pip install requests
3 IDE               PyCharm
‘‘‘
 
#数据在哪里?爬取哪里的数据呢?
#打开浏览器,打开百度,在搜索框中输入“程序设计”  点击“百度一下”按钮,在百度返回的信息中,广告部分不要,其余部分的每个网站的网址
 
#爬虫其实就是在模拟浏览器,向目标网站发一个http请求,这个http请求是如何发送的呢?
#在浏览器按F12,可以帮助我们监控浏览器发送的请求,,90%以上的网站都是基于http请求的
#在搜索框中输入“程序设计”,点击 “百度一下”按钮之后,在Network栏会出现很多数据,每一条数据都代表一个http请求
 
#点击“百度一下”按钮之后,展示的页面超文本是什么样子的呢? 在空白的地方右键-->"查看网页源代码",就会发现网页其实就是一个html文本,经过浏览器处理,展示成用户看到的样子。前台看到的每一项信息都会是一个<a></a>标签,是一个超链接来的。
#所以首先需要找到html文本中的<a>标签中的超链接信息,在Network中的每个http请求的Respont栏下都有很多信息,想要拿到这个数据,就要去Headers栏下去找Request URL信息(如:Request URL:https://ss3.baidu.com/6ONWsjip0QIZ8tyhnq/ps_default.gif?_t=1525188253376)。
 
 
 
#过一遍原理
#网络爬虫
‘‘‘  简单定义一下什么是爬虫
本质上就是一个程序,在获取text之前的这几行代码就是一个爬虫了
这个程序可以模拟浏览器自动去互联网上下载我们需要的网络资源
‘‘‘
 
#网络资源
‘‘‘
在互联网上能够访问到的图片、视频、网页、文件等
每一个网络资源,通过什么访问呢?
比如网页要通过网址来访问 url
‘‘‘
 
#url
‘‘‘
全球统一资源定位符
‘‘‘
 
#浏览器的工作流程
‘‘‘
第一步:浏览器先要访问某个资源,首先要有URL,根据这个URL去访问网络资源,这个url执行其对应的服务器,根据URL,浏览器发送HTTP请求(常用的两种方式get/post)
 
忽略服务器的处理环节了(毕竟不是web开发)
 
第二步:服务器把结果返还给浏览器,返回就是HTTP响应,正常情况下,正常返回的数据,浏览器会从中解包数据进行渲染、展示(如果是图片就展示成图片)给用户
 
不同的爬虫区别就在请求的部分了,根据爬的网站不同,get()需要带的参数就不同
‘‘‘
#爬虫的原理讲完了
#难在分析过程
#简单在就是发送一个http请求
 
#开发爬虫的几个步骤
‘‘‘
1,找到目标数据
        找到目标数据所在的页面或目标数据所在的url
 
2,找到数据的加载流程
        分析怎么发送http请求的
        
3,发送http请求
        模拟浏览器,在“浏览器的工作流程”中有介绍
        
4,提取数据
        数据清洗、处理
 
5,数据持久化
        入库或写入文件
‘‘‘
 
#获取到response之后,就是数据处理环节了,从返回的页面html中提取有用的信息,做数据清洗--这个环节就要用到正则表达式的内容了
 
分析出每一条返回的结果都会被class="result c-container"的div包裹,其中的 href = ""中的内容就是我们想要的URL,就要用正则表达式去从text中提取出这一部分内容,,这一部分尽量用正则表达式去写吧,BeautifulSoap等底层也是正则表达式,效率是没有直接用正则表达式高的。
 
#需要复习一下正则表达式的内容
 
#需要复习一下文件操作
 
#需要复习一个html的知识
 
#学习正则表达式的方法:
‘‘‘
    不要贪心,,很多人学习正则很贪心,以为只要看一下就能把所有元字符都学会,如果这么去想就是给自己找不痛快。
    需要逐个学习元字符,,每学一个元字符,要多练,自己设计字符串去匹配。不停地去写,直到把这个元字符弄懂弄透了。
    什么叫弄懂弄透了?就是3天以后再回来看,还能把它写出来。
‘‘‘
 
 
#学习方法:
#听课学习的是老师的思路,直到大概怎么做,课下再去研究。不会的时候再来看看视频,看看笔记。
 
 
#写代码方法:死去活来法
#先把程序写死,然后不停地优化,最后能让程序适应多种情况
 
 
#如何学习第三方库
#学习别人的代码,看文档知道怎么用就行了
 
 
----------------------------------------------爬虫部分学完了
 
 

百度搜索引擎关键字URL采集爬虫优化行业定投方案高效获得行业流量-笔记篇

标签:分析   右键   取数   流程   服务器   spi   怎么   模块   步骤   

原文地址:https://www.cnblogs.com/avention/p/8981563.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!