文章目录

  • 前言
    • 一、WinHTTrack Website Copier是什么?
    • 二、WinHTTrack Website Copier使用步骤
    • 三、什么是Python?
    • 四、Python实现的功能

前言

实现快速统计网站所有页面的文本字数,需要具备两个条件:
1.获取该网站的所有页面的html文件
2.提取html文件中的文本内容
实现如上两个条件,这里我们需要用到两个工具WinHTTrack Website Copier和python


一、WinHTTrack Website Copier是什么?

WinHTTrack Website Copier是一款离线浏览工具,使用它可以很容易地做站点镜像,可以将你指定的网站完整地保存到本地硬盘,能递归创建与源网站完全一样的组织结构,离线镜像创建后,你可以在断网的情况下任意浏览这个网站的所有内容。

二、WinHTTrack Website Copier使用步骤

  1. 打开WinHTTrack Website Copier,下一步
  2. “Project name”可以使用网站名称命名,“base path”选择一个路径用来保存下载的文件,点击“下一步”。
  3. 在“web addresses”中输入当前网站的URL地址。
  4. 点击“Set options”按钮,在“Scan Rules”选项的文本框中根据需要添加相应的规则,这里我添加的是
    -.css -.js
    -.gif -.jpg -.jpeg -.png -.tif -.bmp
    -.zip -.tar -.tgz -.gz -.rar -.z -.exe
    -
    .mov -.mpg -.mpeg -.avi -.asf -.mp3 -.mp2 -.rm -.wav -.vob -.qt -.vid -.ac3 -.wma -.wmv
  5. 在“Limits”选项中,“Maximum mirroring depth”根据需要进行设置,这里我设置的数值为10
  6. 在“Links”选项中,勾选“Get HTML files first!”选项,点击“下一步”选择“完成”即可开始下载。
  7. 需要实现的功能是统计整站网页的字数,因此我们这里只需要下载html文件即可。html文件所在位置为:[base path][Project name][Project name],该路径下的index.html和index文件夹下的所有文件为整站中的所有html。

三、什么是Python?

Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。
版本:Python3。

四、Python实现的功能

如下代码实现的主要功能是解析下载到的html文件,将html文件中的文本内容进行提取,并按照字符长度计算文本字数。

# -*- coding: utf-8 -*-import os
import re
from lxml import etreedef traverse_file(read_path, save_path):"""遍历目录下所有文件:param read_path: 读取文件路径:param save_path: 存储结果路径:return:"""for base_path, folder_list, file_list in os.walk(read_path):print('开始遍历{}目录下的html文件'.format(base_path))for file_name in file_list:file_path = os.path.join(base_path, file_name)file_ext = file_path.rsplit('.', maxsplit=1)if file_ext[1] == 'html':  # 判断文件是否为htmlwith open(file_path, 'rb') as f:data = f.read().decode('utf-8', 'ignore')html = etree.HTML(data)pending_html = html.xpath("//body//*[not(self::style)]")  # 不提取style标签中的内容pending_text = pending_html[0].xpath(" //body//*[not(self::script)]/text()")  # 不提取script标签中的内容text = ''.join(pending_text)text_new = text.replace(' ', '')result = text_new.replace('\n', '')print('该网站文本字数为:', len(result))with open(save_path, 'a', encoding='utf-8') as f:f.write(result)def main():# 读取html文件路径read_path = r'D:\data\..'# 结果文件存储目录save_path = r'D:\result\...\result.txt'traverse_file(read_path, save_path)if __name__ == '__main__':main()

如何快速统计网站所有页面的文本字数相关推荐

  1. 如何统计网站各页面一天内的 PV 和 UV?

    大数据开发最常统计的需求可能就是 PV.UV.PV 全拼 PageView,即页面访问量,用户每次对网站的访问均被记录,按照访问量进行累计,假如用户对同一页面访问了 5 次,那该页面的 PV 就应该加 ...

  2. 网站页面浏览次数代码mysql_php统计网站/html页面浏览访问次数程序

    本文章来给大这介绍了php自己写的一些常用的网站统计代码写法,用无数据库的与使用数据库及html静态页面浏览资次数统计代码,大家可进入参考. 实例1 直接使用txt文件进行统计的代码 代码如下 复制代 ...

  3. 查找窗口隐藏了怎么办_如何快速查找网站管理页面

    很多时候,对任何URL进行扫描以查找其漏洞时,渗透测试者或安全研究人员都会尝试查找管理页面(" admin",控制面板或登录名). 登陆任何网站的任何管理页面是任何网站的严重漏洞. ...

  4. 使用百度统计功能快速统计网站的访问情况

    在网站建设完成后,很多人都希望统计到网站的访问情况,如访问了哪个页面.页面停留时间.访问者的IP地址以及访问设备.访问者所在的省份区域.访问来源等诸多信息,要实现这种功能可以自行编写代码,从http请 ...

  5. php统计网站 / html页面 浏览访问次数程序

    本文章来给大这介绍了php自己写的一些常用的网站统计代码写法,用无数据库的与使用数据库及html静态页面浏览资次数统计代码,大家可进入参考. 实例1 直接使用txt文件进行统计的代码 <?php ...

  6. 巧妙使用Firebug插件,快速监控网站打开缓慢的原因

    巧妙使用Firebug插件,快速监控网站打开缓慢的原因 原文 巧妙使用Firebug插件,快速监控网站打开缓慢的原因 很多用户会问,我的网站首页才50KB,打开网页用了近60秒才打开?如何解释? 用户 ...

  7. 揭秘!如何快速提高网站权重-关键词百度指数叠加

    简介:如何快速提高 网站权重 ?一看标题相信可能很多人就会说标题档.忽悠人的,因为 网站优化 没有捷径.的确,木木也说过做推广优化没有快速的方法,想要排名就得脚踏实地.但是下面要说的方法确实可以快速提 ...

  8. (视频) 《快速创建网站》3.4 网站改版3分钟搞定 - WordPress主题安装和备份

    本文是<快速创建网站>系列的第8篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...

  9. 宝塔绑定域名访问不了_千字长文教你使用 宝塔面板 快速搭建网站

    本文将教大家使用 宝塔面板 快速搭建网站,云服务器购买 以及 域名注册 部分请自行上网搜索了解,亦可留言联系小编进行咨询.如果是和下方一样本地搭建演示的话,则不需要付费购买域名和主机.宝塔面板 的是 ...

最新文章

  1. 微型三维图像传感器采用飞行时间技术
  2. 计算机编程课程顺序_您可以在6月开始参加630项免费的在线编程和计算机科学课程...
  3. 首记,一种新的企业信息化平台开发方案——AgileEAS.NET框架
  4. QT的QEasingCurve类的使用
  5. markdown 流程图js_MarkDown 流程图示例
  6. EPSON 自带CCD图像处理包使用举例
  7. lodash 数组元素查找 findIndex
  8. 软件测试薪资标准新鲜出炉,你达标了吗?
  9. bpython3 推送_python3对接聊天机器人API
  10. Mysql insert without auto-increase when duplicate
  11. ora-28500 ora-02063 mysql_ORA-01017/ORA-02063 DbLink建立错误问题分析及解决
  12. CUDA-NPP图像和视频处理
  13. Laravel源码解析【转】
  14. 计算机固态硬盘作用,固态硬盘是什么及作用
  15. 阿里根据截图查到泄露者,这样的技术是如何做到的?
  16. 爱心特效代码(HTML超文本标记语言,直接改记事本后缀)
  17. mysql netbeans_使用Netbeans操作MySQL数据库
  18. 战旗三国一直显示连接服务器,原来战棋三国2可以这么玩,新手玩家可别错过了!...
  19. 鼠标右键多余菜单的清理
  20. 支付宝转账到个人账户

热门文章

  1. Backblaze根据他们手中的历史数据,对不同品牌、容量的机械硬盘进行了一番对比
  2. 思晔投资 | 量化多岗位(全职+实习)
  3. 微信小程序页面跳转:wx.switchTab、wx.reLaunch、wx.redirectTo、wx.navigateTo、wx.navigateBack的使用和区别
  4. DIPP, 企业资源利用率
  5. VB中EOF和BOF
  6. html引入动态资源,云风的 BLOG
  7. java对账系统设计_对账系统产品设计(一)
  8. matlab验证中心切片定理
  9. 王者非法进入服务器维护封号,王者荣耀2018最新封号规则:最高可封号365天
  10. 从路由器查看计算机访问记录,手机通过wifi连接路由上网,管理员能通过电脑终端看到浏览的内容或记录吗?...