Alexa网站排名爬取

news/2024/5/20 5:11:23/文章来源:https://blog.csdn.net/jkwanga/article/details/107495324

Python 话说是一门面向监狱编程的语言,吾等不信,前来尝试。。。。

开玩笑了~

前一段时间刚接触 Python 的时候,觉得有些不适应,特别是语法显得别扭,后来发现它和golang还是挺像的

同样的包管理调用机制:

python:
同样也是包管理机制: import requests
yum install pip
pip install  xxxx

在这里插入图片描述

友好一点直接上代码:代码中自带解析

值得一提的是Python的json数组处理真不方便 代码中有处理

import requests    //是不是和 go使用 的import  引用包一样一样的
import datetime
import json
import sys
from bs4 import BeautifulSoup    //爬虫最常用的包def excuteSpider(url,headers,session,):   //封装的函数方式  别扭,特别是以对齐方式的语法req = session.get(url, headers=headers)bsObj = BeautifulSoup(req.text, 'html.parser')rankList = bsObj.findAll("div", {"class": "rank-index"})linkList = bsObj.findAll("span", {"class": "domain-link"})lranksub=[]llinksub=[]for rank in rankList:lranksub.append(rank.string.encode('utf-8').decode())for link in linkList:llinksub.append(link.a['href'].encode('utf-8').decode())return lranksub,llinksubif __name__=='__main__':   //主函数lrank=[]llink=[] session = requests.Session()headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0","Accept": "*/*"}  //构建头部  可以填更多的参数 模拟浏览器访问网址for i in range(1,2):  //想要多少页?if i==1:url = "http://www.alexa.cn/siterank/" else:url = "http://www.alexa.cn/siterank/"+str(i)   //下一页lranksub,llinksub=excuteSpider(url, headers, session)lrank+=lranksubllink+=llinksubjsontext = {"version":"1.0.0","domains":[]}   //创建 json数据for i in range(len(lrank)):jsontext["domains"].append({"id":lrank[i], "domain":llink[i]})  //追加cur_dir = sys.path[0]    //获取当前路径work_dir = cur_dir + '/../db/alexa-cn/'    //到上一级路径  /../now = datetime.datetime.now()name = datetime.datetime.strftime(now,'%Y%m%d%H%M%S.json')  //时间格式化chinazfilepath = work_dir+namewf = open(chinazfilepath, 'w')wf.write(json.dumps(jsontext,indent=4,ensure_ascii=False))  //jso格式化输入文件wf.close()print('ok')

爬取结果:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_838579.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站请求出现Referrer Policy: no-referrer-when-downgrade的问题

网站请求出现Referrer Policy: no-referrer-when-downgrade的问题 #netstat –nap |grep 443 //查看端口信息#ps –ef |grep nginx //查看nginx是否启动#systemctl status nginx –l //查看nginx 的错误信息一般是跨域的问题 检查nginx的启动是否正常 此次是 https…

prerender-SPA程序的SEO优化策略

随着web2.0的兴起,ajax的时代已经成为了事实,更如今Knockout,backbone, angular,ember前端MDV(model driver view)框架强势而来,Single Page Application已经为大家所熟悉了。如今常见的SPA程序,restfull和前端MDV之类的框架能够实…

Wordpress网站添加七牛云cdn

1.一个搭建好的网站和七牛云账号 2.七牛云进入控制面板 3创建存储空间 4创建好了空间拿七牛给你了测试域名(但只可以使用30天)所以绑定自定义域名(这个必须是备案过的) 5.设置自定义域名(加速域名最好是二级域名&#…

S-CMS企业建站v3几处SQL注入

0x01 前言 有段时间没有发文章了,主要没挖到比较有意思的漏洞点。然后看最近爆了很多关于S-CMS的漏洞,下载了源码简单挖了一下然后给大家分享一下。 0x02 目录 Wap_index.php sql注入Form.php Sql注入Input、query 0x03 插曲 这里分享一下在审计的时候自…

10年生日教大家轻松做一个网站

图片多~暂没时间传过来,如果QQ空间的图片防盗链,请看原文章地址:http://user.qzone.qq.com/296827066/blog/1266877782 去年的生日是教大家煎鸡蛋(http://user.qzone.qq.com/296827066/blog/1233724431),今…

05.net网站开发(设计):2.MVC控制器与视图的简单收发数据

上一节大概了解了MVC的运作方式。这一届发一个简单样例,在网页界面中的文本框输入一个值,在后台控制器中进行接收,然后跳转到另一个页面。一:要发送数据的视图在HomeController中新建一个视图public ActionResult MyView(){return…

06.net网站开发(设计):3.MVC注册强类型

什么是MVV注册强类型呢?其实一开始我也是混乱得不行。这个Model模型比我们写三层创建的Model强大得多,一旦创建之后,系统便可以快速生成常用的视图,包括“列表”、“增删查改”功能这些功能随意选择。配合使用"数据库模型&qu…

08.net网站开发(前端):5.jQuery

开发网站肯定要会JS,嫌代码太难看难学那至少要学会jQuery。当然我见过有些项目纯用服务端控件也是能做出来的,但我相信,那些碰到复杂的需求的话肯定很棘手的。jQuery是对JS和DOM的封装,少量代码直接解决大多兼容性问题。jQuery我是…

09.net网站开发(前端):6.类淘宝组合搜索效果jQuery+Ajax

上一节讲到jQuery,本来还不能这么快就发jQueryAjax的,因为这部分对于新手来说,不是很好理解,但为了配合发我的实习经验,就先贴出来了。新手先有个概念就好,Ajax是为了前端能和后台交互的,它们的…

11.net网站开发(交互):2.MVC 购物车

这一节完了之后,差不多就停止基础知识的更新了。接下来可能要做一个实例项目,用MVC或者传统.NET WEB 还不是很清楚,要做什么项目也还在考虑,反正肯定开源附加完整文档。但我需要它是以完成某种任务的形式,不然真没那么…

30个酷毙的交互式网站(HTML5+CSS3)

很久前就像找些文章来翻译,and这是第一篇,刚开始翻译着很有兴致,但中间就开始累了,感觉好多好多,因为不仅要翻译,还要看网站,还要排版,花了两天空闲时间还是硬着头皮翻译下来了&…

17项目简介与草稿设计(网站开发)

做网站需要的基础技能已经交待得差不多了,接下来就是给出一个项目案例了。想做一个开源的论坛源码,有兴趣的朋友可以一起参与哈,QQ 696619。 本项目简介: 《内部论坛》,为移动设备所开发的论坛,发展重点为…

19网站实现QQ登录功能

一般网站要先做个用户注册的功能页面,但我的网站名气不大,不需要要求用户注册,所以直接使用腾讯QQ登录的API接口。 如何使用JS_SDK让网站拥有QQ登录的功能,官网的这篇文章写得还算完整:http://connect.qq.com/intro/lo…

20快速开发网站项目的工具和方法

本来已经进入“正式开发”的教程部分了,但这次还是要先插入一些“旁门左道”,因为很多时候,我们仅仅只是要演示一个产品概念或者完成一次老师布置的课程设计,那就没必要仔仔细细地敲打每一行代码。像我这学期选修了“高级网页”课…

基于SSH的在线美食点评网站-java在线美食点评网

基于SSH的在线美食点评网站-java在线美食点评网 开发环境:Eclipse for J2EE,MYSQL5.1,JDK1.7,Tomcat 7首页主要展示一些当地美食。(1)用户注册:用户填写注册账号、密码。 (2)用户登录:用户注册成功后,使用注册账号、密码登录。成功…

关于各网站回到顶部的细节功能

对比一下吧,不说话了,很多人学到的皮毛和精髓是完全两码事。先看淘宝:http://item.taobao.com/item.htm?id9134206497&ali_refida3_619362_1007:1102299863:7:46702465U84y78608587678s868v3I:090efd2e7e3bc5c1f468dbe7eeb252b1&ali…

怎么看服务器linux版本,linux怎么查看版本命令_网站服务器运行维护,linux

如何解决docker内部访问不了宿主_网站服务器运行维护docker内部访问不了宿主的解决方法:首先配置防火墙规则并重载规则;然后启动容器时使用“--net host”模式;最后关闭防火墙即可。linux查看版本命令的方法是:1、# uname &#x…

网站服务器上安装的操作系统,服务器上安装的操作系统

服务器上安装的操作系统 内容精选换一换本节操作以Windows Server 2012 R2 标准版操作系统的弹性云服务器为例,介绍安装IIS服务的操作步骤。本节操作仅是安装IIS服务的操作步骤,后续搭建具体应用的操作步骤请根据业务实际情况进行配置。打开服务器管理器…