【视频教程】用Python实现百度PC端关键词覆盖率查询

优采云 发布时间: 2022-05-07 11:25

  【视频教程】用Python实现百度PC端关键词覆盖率查询

  一、概述

  当我们要了解一批关键词的操作手法的时候,最简单的方法就是学习一下那些排名好的竞争对手的操作方法。然后去模仿他们的做法,那么我们就需要拿这批关键词去百度进行搜索,然后提取出排名前面的竞争对手的网址。

  当我们想了解一下自有网站在某些关键词的排名情况的时候,也是需要一个个关键词的去进行查询,然后提取出自己网站的排名和对应的地址。

  以上的两种情况都需要我们对搜索结果的数据进行结构化的提取,如果是数据量很小的时候,可能我们还可以人工的搜一下,但是当我们需要检查几万,十几万,甚至是几十上百万的关键词的时候,那么一个自动化的工具就是我们迫切需要的。

  下面的教程就是教大家怎么用python来自己造一个这样的工具出来。

  二、知识点及所需模块

  1、所需知识点梳理

  因为是爬虫入门课程,所以需要到的都是python的基础知识。需要了解Python的基础数据类型、函数式编程的知识以及python的错误处理机制和一些多线程的 基础(课程也会讲到)。

  非Python的知识点主要有正则表达式的基础、HTML(div+css)基础知识。

  2、所用到的python模块:

  网页下载模块:urllib2,requests(后期重构代码时添加的,安装方法:pip install requests)

  正则表达式模块:re (提取网页数据)

  链接解析模块:urlparse (解析URL用)

  多线程模块:threading (速度快不快就靠它了)

  限制请求速度:time (避免被封)

  3、用到的IDE

  ipython notebook:用于测试代码和模块用法查询等

  安装方法:(Windows系统最好安装64位的python,基于python2.7.x)

  pip install jupyter

  pycharm:用于编写完整项目

  破解网址:

  三、程序结构

  覆盖率查询最终需要的数据:

  结果保存:以字典(dict)的方式进行保存统计

  最终输出保存为txt文件

  关键词排名查询最终需要数据

  最终结果保存为txt文件

  基于上述的分析,以及为了降低程序的耦合度,实现更容易实现程序的扩展考虑,我们需要将每个功能模块给进行独立的封装:

  百度serp源码下载函数(downloader): 主要实现提供一个关键词,然后下载百度的源代码并返回。对于下载失败的,可以进行给定次数的重新下载。

  覆盖率查询的百度serp结果提取函数(coverParser): 主要是提取百度搜索结果的网站排名加密地址

  百度加密地址解析函数(secUrlParser): 主要对百度的加密地址还原为真实的网站地址并提取出域名部分

  覆盖率结果统计函数(coverCounter): 对所有的域名进行次数统计

  多线程处理函数(thread_process): 主要用于集成整个处理流程,然后通过多线程来调用

  多线程调度函数(dispatcher): 加快爬虫的抓取效率

  结果输出及排序函数(output): 先对结果进行倒序排序后输出到txt文件

  视频地址:密码:qpav

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线