前言:因为最近打算打一下CTF,所以我就在思考能不不能自己写一个脚本工具把那些像什么base64 ,base32 这些编码解码集成在一个脚本里面,但是一直报错一直报错(=_=   =_=  pycharm可以正常编译但是在命令行就一直报错,还好这个问题已经解决下一篇博客会提到)。好TMD烦,那就索性先放一下那个脚本无意间发现了下面,一般情况下我们只管pip/pip3 install XXX 可是很少人会更新我们安装的包,当时想着自己手动升级的话还是优点麻烦的,这时就想能不能写一个自动化升级的脚本把我们安装过的所有包一次性升级一下。

#-*- coding:utf-8 -*-

import os

import re

def update():

    pipList = os.popen('pip3 list').readlines() #这里就相当于我们在cmd里面输入pip3 list 展示 pip3 安装的所有包

    #print(pipList)

    p = re.compile(r'\(.*?\)')#由于pipList里面存储的数据都是pefile (2017.11.5) 这种样子的,但是我们只需要pefile而不要()里面的东西,所以要利用正则表达式将()以及里面的内容去掉

    try:

        for i in pipList:

            content = p.sub('',i) #利用正则表达式去掉无用的信息

            print(content)

            os.system('pip3 install --upgrade' + ' '+content) #开始更新内容

    except:

        pass






if __name__=='__main__':

    update()

                 这时候我们需要进行该文件所在的目录  然后在命令行中输入 python update.py  这时候就开始自动化升级全部的包如下图

       如果不出差错脚本就会一直执行下去直到将所有的包都更新完,当然有时候会因为网速原因更新过程会被中断掉。那就等网速好的时候重新跑一下程序,记住是在控制台里面哦!直接用pycharm编译会出现一些未知错误!由于时间有限就没有再磕这个bug了

       下个博客会写我最近集成了一些在CTF中常用的功能的脚本 +_+ 未完待续。。。。。+_+