使用python builtwith模块分析识别网站开发技术(python2.7)

简介: 本文目录1. 网站开发技术概述2. 安装builtwith模块3. 分析网站开发技术4. 其他

1. 网站开发技术概述

目前主流的网站开发技术,应该是PHP/Java EE/ASP.NET,一般情况下,如果在浏览网站时,发现网页后缀名包含.php,该网站一般是使用了PHP技术;同理如果含有.jsp,那么可能采用了Java EE;如果含有.aspx,那么可能采用了ASP.NET。


当然,只能是可能而已,比如在Java EE中可以利用Servlet配置拦截的url样式,从而响应.do/.action或其他自定义的请求。


现在,python语言的builtwith模块可以直接分析网站所采用的技术,满足了我们对一个网站进行分析最基本的需求。


2. 安装builtwith模块

在终端执行pip install builtwith即可安装builtwith模块,前提是已经安装了pip,pip安装参见博文《CentOS7 Linux下安裝python-pip 》。


注意执行安装命令时需要root权限。


3. 分析网站开发技术

如下,首先执行python命令进入python代码模式,然后倒入builtwith模块,利用该模块的parse()方法分析搜狐网的开发技术,从输出可以看出,搜狐网使用了Javascript和Nginx。


[root@localhost chen]# python

Python 2.7.5 (default, Nov  6 2016, 00:28:07)

[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import builtwith

>>> builtwith.parse("http://www.sohu.com")

{u'javascript-frameworks': [u'RequireJS'], u'web-servers': [u'Nginx']}

>>>

1

2

3

4

5

6

7

8

下面再分析几个网站:


新浪:


>>> builtwith.parse("http://www.sina.com.cn/")

{u'javascript-frameworks': [u'Prototype', u'jQuery'], u'web-servers': [u'Nginx']}

1

2

淘宝


>>> builtwith.parse("https://www.taobao.com/")

{u'web-servers': [u'Tengine']}

1

2

4. 其他

其实我们自己也可以写一个识别网站的模块,先把网站关联的代码下载下来,然后如果有<script>..jquery.min.js...<script>说明该网站应该使用了jquery技术。


这个模块名就叫identifysite(识别网站),是不是更形象,哈哈。

相关文章
|
8天前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现智能食品消费模式分析的深度学习模型
使用Python实现智能食品消费模式分析的深度学习模型
99 70
|
10天前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现智能食品消费习惯分析的深度学习模型
使用Python实现智能食品消费习惯分析的深度学习模型
112 68
|
15天前
|
算法 数据安全/隐私保护 开发者
马特赛特旋转算法:Python的随机模块背后的力量
马特赛特旋转算法是Python `random`模块的核心,由松本真和西村拓士于1997年提出。它基于线性反馈移位寄存器,具有超长周期和高维均匀性,适用于模拟、密码学等领域。Python中通过设置种子值初始化状态数组,经状态更新和输出提取生成随机数,代码简单高效。
101 63
|
17天前
|
测试技术 Python
手动解决Python模块和包依赖冲突的具体步骤是什么?
需要注意的是,手动解决依赖冲突可能需要一定的时间和经验,并且需要谨慎操作,避免引入新的问题。在实际操作中,还可以结合使用其他方法,如虚拟环境等,来更好地管理和解决依赖冲突😉。
|
6天前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费市场分析的深度学习模型
使用Python实现智能食品消费市场分析的深度学习模型
71 36
|
17天前
|
持续交付 Python
如何在Python中自动解决模块和包的依赖冲突?
完全自动解决所有依赖冲突可能并不总是可行,特别是在复杂的项目中。有时候仍然需要人工干预和判断。自动解决的方法主要是提供辅助和便捷,但不能完全替代人工的分析和决策😉。
|
4天前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费趋势分析的深度学习模型
使用Python实现智能食品消费趋势分析的深度学习模型
42 18
|
13天前
|
测试技术 开发者 Python
使用Python解析和分析源代码
本文介绍了如何使用Python的`ast`模块解析和分析Python源代码,包括安装准备、解析源代码、分析抽象语法树(AST)等步骤,展示了通过自定义`NodeVisitor`类遍历AST并提取信息的方法,为代码质量提升和自动化工具开发提供基础。
26 8
|
16天前
|
数据可视化 数据处理 Python
Python编程中的数据可视化技术
在Python编程中,数据可视化是一项强大的工具,它能够将复杂的数据集转化为易于理解的图形。本文将介绍如何使用matplotlib和pandas这两个流行的Python库来实现数据可视化,并展示一些实用的代码示例。通过这些示例,读者将学会如何创建各种图表,包括折线图、柱状图和散点图等,以便更好地理解和呈现数据。
|
13天前
|
机器学习/深度学习 数据采集 供应链
使用Python实现深度学习模型:智能食品市场分析
使用Python实现深度学习模型:智能食品市场分析
30 0