Python实现获取网站PR及百度权重


Posted in Python onJanuary 21, 2015

访问它,得到Rank_1:1:0。第二个引号后面的数字是PR,因为我的站是没有PR的,所以PR为0.

于是,我们使用requests.get()来访问我们这个构造好的URL,然后获得类似Rank_1:1:0这样的结果,最后通过正则或其他方式得到PR值0。

以上是getPR这个函数的执行过程。再看获取百度权重的过程。

百度权重并不是百度官方给的一个标准,是一些第三方网站计算的一个值,所以并没有像PR一样的接口。所以我们就需要抓取这些第三方网站中的信息了。下面是获取百度权重的函数:

def getBR(www):

    try:

        url = 'http://mytool.chinaz.com/baidusort.aspx?host=%s&sortType=0' % ( www , )

        response = requests.get(url)

        data = response.text

        rex = re.search(r'(<div class="siteinfo">.+?<font.+?>)(\d*?)(</font>)',data,re.I)

        return rex.group(2)

    except :

        return None

使用方法也是传入域名,返回权重值。

我抓取的是站长工具的一个权重咨询的页面:http://mytool.chinaz.com/baidusort.aspx?host={域名}&sortType=0

我的正则就是它:(<div class="siteinfo">.+?<font.+?>)(\d*?)(</font>),大家可以自己查看源代码看一下,就知道正则怎么写了。

好了,我们来批量获取一下这些网站的PR和权重:

Python实现获取网站PR及百度权重

直接看结果:

Python实现获取网站PR及百度权重

单一一个进程扫的话速度会略慢,开10个20个线程批量获取的话应该比较快。

Python 相关文章推荐
python求斐波那契数列示例分享
Feb 14 Python
让Python代码更快运行的5种方法
Jun 21 Python
Python中实例化class的执行顺序示例详解
Oct 14 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
python设置随机种子实例讲解
Sep 12 Python
Django 实现xadmin后台菜单改为中文
Nov 15 Python
python 初始化一个定长的数组实例
Dec 02 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
Feb 06 Python
Python flask框架端口失效解决方案
Jun 04 Python
Python datetime 如何处理时区信息
Sep 02 Python
Python中的None与 NULL(即空字符)的区别详解
Sep 24 Python
Python测试框架pytest高阶用法全面详解
Jun 01 Python
Python实现抓取页面上链接的简单爬虫分享
Jan 21 #Python
Python中多线程及程序锁浅析
Jan 21 #Python
Python实现的多线程端口扫描工具分享
Jan 21 #Python
Python中的pprint折腾记
Jan 21 #Python
通过C++学习Python
Jan 20 #Python
python入门之语句(if语句、while语句、for语句)
Jan 19 #Python
Python实现删除Android工程中的冗余字符串
Jan 19 #Python
You might like
国产动画《伍六七》原声大碟大卖,啊哈娱乐引领音乐赋能IP的新尝试
2020/03/08 国漫
PHP编程中八种常见的文件操作方式
2006/11/19 PHP
一个简单的php实现的MySQL数据浏览器
2007/03/11 PHP
php入门学习知识点四 PHP正则表达式基本应用
2011/07/14 PHP
深入理解PHP的远程多会话调试
2017/09/21 PHP
网站繁简切换的JS遇到页面卡死的解决方法
2014/03/12 Javascript
用javascript读取xml文件读取节点数据
2014/08/12 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
2016/04/01 Javascript
深入理解jQuery 事件处理
2016/06/14 Javascript
微信小程序 动态绑定数据及动态事件处理
2017/03/14 Javascript
js CSS3实现卡牌旋转切换效果
2017/07/04 Javascript
vue子父组件通信的实现代码
2017/07/09 Javascript
解析vue中的$mount
2017/12/21 Javascript
原生JS实现$.param() 函数的方法
2018/08/10 Javascript
微信小程序异步API为Promise简化异步编程的操作方法
2018/08/14 Javascript
Vue 实现展开折叠效果的示例代码
2018/08/27 Javascript
基于Vue-cli快速搭建项目的完整步骤
2018/11/03 Javascript
JS尾递归的实现方法及代码优化技巧
2019/01/19 Javascript
vue路由切换之淡入淡出的简单实现
2019/10/31 Javascript
解决vue页面刷新,数据丢失的问题
2020/11/24 Vue.js
python基于queue和threading实现多线程下载实例
2014/10/08 Python
python模拟登录并且保持cookie的方法详解
2017/04/04 Python
Python实现字符串与数组相互转换功能示例
2017/09/22 Python
Python基于最小二乘法实现曲线拟合示例
2018/06/14 Python
Python运行不显示DOS窗口的解决方法
2018/10/22 Python
opencv 形态学变换(开运算,闭运算,梯度运算)
2020/07/07 Python
Python 发送邮件方法总结
2020/08/10 Python
html5 div布局与table布局详解
2016/11/16 HTML / CSS
街头时尚在线:JESSICABUURMAN
2019/06/16 全球购物
以思科路由器为例你写下单臂路由的配置命令
2013/08/03 面试题
介绍一下grep命令的使用
2015/06/12 面试题
本科毕业生的求职信范文
2013/11/20 职场文书
财务总监岗位职责
2014/03/07 职场文书
人力资源本科毕业生求职信
2014/06/04 职场文书
2015年食堂工作总结报告
2015/04/23 职场文书