分享:网页文件内容查找小工具

2022年3月8日 2,273 浏览数 没有评论

因工作需要,要将包含某些“关键词”的网页文件从磁盘中查找出来。在网上找了很久都没有找到顺手的工具,所以就动手写了一个。“独乐乐不如众乐乐”,分享给大家。Python语言初级,见笑了!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import os,re
 
#获取当前目录下所有文件名及目录名
def pri_all_file(dir):
    names = os.listdir(dir) 
    li = []
    extension = ['.shtml','.html','.htm'] #定义要查找的文件类型
    for name in names:
        full_name = os.path.join(dir,name) #拼接成完整路径
        if os.path.isdir(full_name):
            #li.append(full_name)
            li.extend(pri_all_file(full_name)) #递归遍历子目录下文件及目录,并一次性加入原列表中
        else:
            #print(full_name)
            if os.path.splitext(name)[-1] in extension: #取文件扩展名进行比较
                li.append(full_name)
    return li
 
#将列表中的内容一行行写入文件
def write_result_file(result):
    ls = os.linesep #行分隔符
    filename = "result.txt" #保存结果的文件,在.py文件所在的目录中
    try:
        fobj = open(filename,'w')
    except IOError as e:
        print("file open error:",e)
    else:
        fobj.writelines('%s%s' % (txt,ls) for txt in result)
        fobj.close()
 
#程序主体
if __name__ == "__main__":
    dir_name = '/wwwroot' #定义要查找的文件夹
    keyword = ['张三' ,'李四'] #定义要查找的关键词
    findfilelist = [] #找到的文件列表
    filelist = pri_all_file(dir_name)
    for filepath in filelist:
        f = open(filepath, encoding='utf-8')
        try:
            t = f.read()
        except:
            f = open(filepath, encoding='gbk', errors='ignore')
            t = f.read()
        f.close()
        pattern = re.compile('<body[\s\S]*?</body>', re.IGNORECASE) #定义一个取出body内容的正则表达式,忽略大小写
        result = pattern.findall(t)  #进行匹配,找到所有满足条件的
        content = "".join(result) #列表转化为字符串
        if len(content) != 0:
            for k in keyword: #循环关键词
                if content.find(k) != -1:
                    print('\r[%s] %s' % (k,filepath))
                    findfilelist.append('['+k + '] ' + filepath) #找到则输出文件地址
                    # if os.path.isfile(filepath): #判断是否是为文件(文件是否存在)
                    #     os.rename(filepath, filepath + '_bak') #修改文件名
 
        print('\r%s' % (filepath), end = '')
 
    write_result_file(findfilelist) #将查找结果写入result.txt文件中
分类: 伪编程 标签: ,

探索m.chinanews.com的新闻采集

2022年2月25日 1,093 浏览数 没有评论

《中国新闻网》客户端分享出来的文章,用PHP常规采集获取不到新闻内容。经过一番探索,发现了其中的“秘密”。现将过程分享如下。

打开这个网址:https://m.chinanews.com/wap/detail/zw/gn/2022/02-23/9683825.shtml 查看网页源码,很显然新闻内容都是通过JS加载进来的。

在浏览器中按F12,打开“开发者工具”,切换到“Network”面板,按F5刷新页面,结果出来了。点击“Fetch/XHR”子面板,第二条就是获取内容的链接。

我们在该链接上点鼠标右键选择“Open in new tab”却发现打开的网页没有任何内容。看来是在“Request Headers”上做了“手脚”。

通过几次比较“Request Headers”。发现只有“accessToken”和“timestamp”有变化。 阅读全文…

分类: 经验技巧 标签: ,

IIS7~8.5 权限研究

2021年4月7日 7,682 浏览数 没有评论

  IIS7及以上版本相对于IIS6改变较大,完全不适应于以往的管理方法,需要我们重新学习。通过对微软文档的研究,我觉得IIS7就像是用“管理酒店”的方式来管理网站。下面就用“管理酒店”的例子来简单描述一下过程:
  酒店就是把一幢楼开辟出很多房间,供旅客使用。为了管理好房间,更好地为旅客服务,酒店会配备服务员,服务员的日常工作就是打扫、整理房间。服务员一般都会有门卡,可以自由出入房间。旅客到酒店登记后,也会给门卡。旅客使用门卡打开房间门,便可使用房间里的一切物品。IIS7的“应用程序池”就是“服务员”,网站用户就是“旅客”,网站的文件夹就是房间。关于权限问题会有下面几种情况:
  1、服务员有默认的门卡,旅客使用和服务员一样的门卡(默认应用程序池帐号IIS APPPOOL\{app pool name});
  2、服务员有默认的门卡,旅客也有默认门卡(应用程序池使用默认帐号,网站用户使用默认IUSR账号);
  3、服务员和旅客都使用专用门卡(应用程序池和网站用户都使用专用帐号);

针对这三种情况,我们要设置IIS7的访问权限。
第一种情况,都使用“应用程序池”默认帐号
1.添加网站,选择物理路径之后,点“连接为”设定为:应用程序用户

2.给“网站文件夹”添加该网站的“应用程序池”名称帐号(隐藏的,属于“IIS_IUSRS”组)如:iis apppool\你网站的应用程序池名称

回到IIS,点击“测试设置”结果中的授权“无法验证对路径xxxxx的访问”,不用管它
3.点“身份验证”,编辑“匿名身份验证”,选择“应用程序池标识” 阅读全文…

分类: 网站相关 标签:

更改WampServer默认的www根目录

2020年12月22日 4,932 浏览数 没有评论

  平常在本地电脑上搭建PHP运行环境,我都喜欢使用WampServer。它安装简单,选择PHP版本和配置PHP扩展也方便。最近要调试Laravel框架,需要将WampServer默认的www根目录更改为Laravel的public目录。由于之前没有改过就从网上找了一下教程,结果还真是涨见识了。网上那些教程千篇一律,也不知转谁的?多久前发的?要到WampServer安装目录里找配置文件,还要更改好几个,操作麻烦。没敢按网上教程动手,仔细研究了一下,发现很简单。

  WampServer使用的Web服务是Apache,它的配置文件是httpd.conf,只要更改它就可以了。在实地操作时我又发现Apache有虚拟主机设置,也就是有httpd-vhosts.conf配置文件。只要更改它里面的路径地址(或者新建虚拟主机),再重启一下服务即可生效。操作图示如下:


分类: 经验技巧, 网站相关 标签:

再聊聊车子

2020年4月20日 8,213 浏览数 没有评论

  男人这辈子,总逃不了老婆孩子、房子和车子。先前也聊过车子对于家庭的重要性,所以买车、用车这事一直都是生活中比较重要的话题。许久没在博客上记录生活了,今天就再来聊聊车子吧!

  先前买的豪爵铃木“海王星”摩托车,皮实、耐用,外观看上去也像电动车,所以日常在城市中穿行倒也顺利!父母年迈,以前生活在一起时不觉得怎样,自从搬家之后,距离远了,心也孤寂了,每个月总要带上孩子去看望一下。孩子成长很快,身高都要赶上我了,挤在摩托上非常不安全。所以,买汽车便被提上了日程。

  其实想买汽车的心一直都有,先前“玩”自行车时,受上海“老秦”的影响,对于开车带老婆孩子出游甚为羡慕,但苦于当时收入不高,像“汽车”这样的大件,很难下狠心“娶”回家。再者和父母生活在一起,汽车除了出游倒也没有别的用处。羡慕归羡慕,也知道有汽车的好,但终没有行动。

  2015年,因担心驾考政策变化导致考试难度加大,便去考取了驾照。非常顺利地拿到了驾照,但之后四年再没摸过车。

  2016年初为了解决上班、孩子上学等一系列问题,在新城区买了房。买过之后,本地的房价就开始飞涨,庆幸下手及时!

  2018年本田“机油门”爆发,优惠幅度大增,心动五代CRV。为何看中了CRV?其实原因很简单,以前邻居家买的就是CRV,所以印象比较深,了解得也比较多!身边有位同事也买了辆四代CRV,开了两年,赞不绝口!

  CRV自1995年投产以来,至今已历经五代,是本田的主打车型,此车的特点就是车内空间大,皮实耐用。我比较喜欢一代和二代那种方正的外形,三代之后变圆润了很多,四代的屁股相当丑,很不喜欢!五代改款屁股好看了许多,前脸“大板牙”更为突出,加上菱形进气格栅,有如乐呵呵的一张笑脸。反观丰田家的车,极美极丑两极分化。皇冠、雷克萨斯都极为惊艳,而致炫、威驰、奕泽等活脱脱一张“狗”脸,欺负穷人么?与CRV同档次的RAV4,却改款成苦瓜脸。虽说外观因人而异,也无关重要,但是价格上却差别很大。RAV4是最新改款,没有优惠,内饰也一般。纠结了几天,放弃!

  此次本田“机油门”主要出在1.5T车型上,所以选车时主看了2.0L自然吸气的混动车型。恰巧广本的“皓影”也出来了,又多了一种选择。 阅读全文…

分类: 生活琐记 标签: