• cornradio
    在把自己的项目分享给别人的时候,对方需要安装一些依赖包,但是每次等待报错然后手动 pip install 太麻烦了(尤其是包比较多的情况下),可以使用这种方式来一键安装和更新pip包。 准备requirements.txt 这个文件里面写上你需要安装的包 gradio mdtex2html pypinyin tiktoken socksio tqdm colorama duckduckgo_search Pygments llama_index langchain markdown 安装和更新 安装 pip install -r requirements.txt 更新 pip install -r requirements.txt --upgrade 删除requirements.txt中的所有包 pip uninstall -r requirements.txt -y 额外提示 获取当前电脑pip中所有的包 pip freeze > requirements.txt 删除当前电脑pip中所有的包 pip uninstall -y -r <(pip freeze)
  • cornradio
    js基础(for pentest) 真的很基础。 JS for pentest tag 放置位置 内嵌式 理论上js可以写在任何第一个地方 但是一般写在head标签里或者body标签里 <script type="application/javascript"> alert("内嵌式"); </script> <script>alert("内嵌式");</script> 外链式 首先新建一个文件类型为.js的文件,然后在该文件中写js语句,通过script标签对引入到html页面中。 指定关键字延迟加载js:defer <script src="js文件路径地址"/>⭐️ //defer <script defer src="js文件路径地址"/>⭐️ 行内式 直接书写在标签身上,是一个简写的事件,所以又称之为事件属性。 onclick单击事件 <input type="button" value="点我呀!" onclick="alert('暗月渗透测试培训');"> <button oncli…
  • cornradio
    dom 元素的定位、修改、创建、删除、指定位置插入等操作 dom // 获取id为myDiv的元素 var myDiv = document.getElementById("myDiv");⭐️ // 修改元素文本内容 myDiv.innerHTML = "<p>Hello, DOM!</p>"; // 创建新元素并添加到myDiv中 var newElement = document.createElement("p"); newElement.innerHTML = "This is a new paragraph."; myDiv.appendChild(newElement); 定位 以下是一些常用的getElementBy…()方法: getElementById() - 通过元素ID获取某个元素节点 var element = document.getElementById("myElementId"); getElementsByClassName() - 通过class名称获取一组元素节点 var elements = document.getE…
  • cornradio
    console.log 、 alert 、 prompt 、 confirm 、 location.href 、 setinterval 、 settimeout 、addEventListener 常用操作 console log console.log('hello world'); 定时 内置函数 setinterval()、settimeout() 每秒钟打印一次hello world var timer = setInterval(function(){ console.log('hello world'); },1000); //停止打印 clearInterval(timer); 3秒钟后打印hello world setTimeout(function(){ console.log('hello world'); },3000); 弹窗等 alert('hello world'); //弹窗 confirm('hello world'); //弹窗,点击确定返回true,点击取消返回false prompt('hello world'); //弹窗,输入框 重定向 lo…
  • cornradio
    还没写,先留着空位 2023-03-20可恶啊,我又忘了 好耶,留着留着,就忘了。。。 现在不会了 该死……
  • zahui
    成都地铁共振的噪音越来越大,16楼的感受非常明显,更不用说低楼层的邻居们了。#成都地铁共振噪音有一天邻居们在业主群里讨论,有个邻居说,感觉楼上一天到晚都在洗衣服,有规律性的震动噪音。我给他说,不是洗衣机,是地铁的共振噪音,5分钟一趟,...
  • zahui
    在广岛生活的小学5年级生亚美子(大泽一菜)是个有点异想天开的孩子,在善良的父亲哲郎(井浦新)、怀孕的母亲小百合(尾野真千子),以及一起上学放学的哥哥(奥村天晴)等人的守护下,过着自由自在的时光。但是,亚美子过于纯真的言行,却逐渐开...
  • cornradio
    0. 为什么要做教程 改成桥接之后,可以把游戏主机放到DMZ区域,NAT类型可能得到改善。还有软路由的一些好玩功能都可以试试看。 打电话中国移动客服不给我改,还说要么让师傅上门,我真的很讨厌上门操作,还要等。而且影响我正常上网了(微信不知道为啥老爱转圈,怀疑是两层路由的锅) 网上相关改桥接的教程很多,但是都很老的(从截图上就看得出来),对我的机器来说一点帮助都没有,而且我在搞的时候也发现了一些坑,我要发教程以帮助别人。 为什么要改桥接呢,因为光猫很弱,虽然自带天线并且可以当作路由器,但是相应的设置和管理功能都太弱了。 而且专业的设备做专业的事情,光猫还是仅仅做光电转换比较好! 当然,更重要的是我想要自己对网络的完全控制权。 1. 了解光猫 我推荐你在看教程之前先确定一下你的光猫是否和我的是同样的款(H2-2)。 这款光猫后面有四个wan口,推荐1号接路由器,234空着(4号是默认IPTV的接口),因为1号是高速的千兆口,其他的是百兆口。 2. 获取超级密码 超级密码不推荐自己花时间破解,网上能找到的方法基本被封了。 在闲鱼买一个就可以了,关键词“光猫超级密码”。 上海移动据说每个机器在…
  • cornradio
    因为我买的MacBook只有512G的容量,所以我一直对容量使用比较在意,今天打开磁盘工具,发现我的MacBook的磁盘空间已经不足了。 我一直使用 OmniDiskSweeper 来清理空间,他能直接显示你所有文件夹占用的空间,一层一层的往下看,并手动删除不需要的文件是我的清理方式 (比用清理工具比如CleanMyMac要好用多了)。 但是今天在清理之后发现,mac的磁盘空间还是不足,我感到非常奇怪。。。因为系统的磁盘管理工具和 OmniDiskSweeper 的磁盘空间使用数据对不上,差了几百G,经过一些搜索发现是因为:TimeMachine(时间机器)。 时间机器 时间机器除了在插上硬盘的时候备份到外置硬盘,还会平常偷偷摸摸的自动备份,在Mac内置存储空间里存放快照,并且他会在空间不足时自动删除最旧的快照。 其实合理的使用时间机器,不会占用太多的空间(因为他是增量保存,仅记录修改,不是复制整个文件),但是如果你使用了虚拟机软件,你在虚拟机里面修改了内容之后,整个虚拟机映像都会被重新备份一遍,,这是非常不合理的。 如何避免 把虚拟机文件之类的排除time machine 备份。至于…
  • cornradio
    开启 WebDAV 可以让你的 windows 设备变成家庭媒体服务器。 这是一个替代选项,毕竟ftp已经过时(无安全性)、文件夹共享简直是太烂了 开启系统功能 搜索:启用或关闭 Windows 功能 勾选并开启下列功能 - Internet Information Services 功能(全选) (Internet Information Services 中下列功能需要手动打勾,默认不选) - 万维网服务功能 - 安全性 - 基本身份验证 - 常见HTTP功能 - Webdav发布 创建 webDAV 站点 添加网站 开启下列功能 webdav - 右侧 - 启用webdav webdav - 添加创作功能 - 允许所有用户,分配读写权限 目录浏览 - 打开功能 身份验证 - 基本身份验证 - 启用(其他选项禁用) ✨右键重启网站 准备要分享的文件夹 针对错误:无权访问web.config 在任何目录下新建一个文件夹,比如:e:本地影视 确保添加everyone用户组的完全控制权限 打通网络 针对问题:在其他电脑上无法连接到 8090 端口 搜索并打开:防火墙 新增一条入站规则、一…
  • Showfom
    以下操作需要 root 权限,本文命令均已带上 sudo 前缀,请确保当前用户拥有 sudo 权限;或者直接使用 root 用户操作并省略命令中的 sudo。其中 docker 命令未加 sudo:建议把当前用户加入 docker 用户组(sudo usermod -aG docker $USER,重新登录生效),或自行为 docker 命令加上 sudo。 1、什么是 HTTP/3 和 QUIC? HTTP/3 是一种基于 QUIC (Quick UDP Internet Connections) 协议的 HTTP 协议版本,它是 HTTP/2 的后继者,旨在改进 Web 性能和安全性。 HTTP/3 与之前的 HTTP 协议有很大的不同,最明显的区别是它使用 QUIC 协议而不是 TCP 协议来传输数据。 QUIC 是一种由 Google 开发的协议,基于 UDP,它在保持安全性的同时提供更快的连接和更少的延迟。与 TCP 不同,QUIC 允许多个请求同时在同一连接上进行,从而减少了网络拥塞和握手延迟的影响。 总的来说,HTTP/3 的设计目标是通过减少延迟和提高性能,为 Web …
  • cornradio
    我需要把我写的程序分给很多没有装 python 环境的人用(即使撞上了 python 环境,也会因为网络原因无法 pip 下载依赖),所以我需要把它打包成 exe ,这样使用门槛就可以很低了。 我主要参考了这篇文章。 我的场景 我的程序比较复杂,虽然是命令行程序,但是有很多依赖,并且程序文件分散在几个文件夹里。 如何打包 1. 安装 pyinstaller pip install pyinstaller 2. 在命令行打包 我的主程序从main2.py开始,并且使用了三个库,采用自动覆盖不提示模式打包,命令如下: 我没有采用打包成单个exe的方式,听说打包成 单个exe 影响性能,本来程序性能就不太好…… pyinstaller -c main2.py --noconfirm --hidden-import pandas,bs4,json5 pyinstaller: -c 命令行模式 –noconfirm 不需要确认,直接覆盖文件 –hidden-import 导入库 3. 复制配置文件 workdir下有一个config文件夹,里面有一些配置文件会在程序运行时动态加载,需要复制到打包…
  • cornradio
    教程 用 python 的人都用 pip 安装过包。那么有着开源精神的你,是否也想把自己写的包上传到 pypi 呢? 官方中文教程地址 一个视频教程 更新/发布步骤: 修改完善 setup.py 进行本地测试 python setup.py develop 编译 python3 setup.py sdist 上传到 pypi twine upload dist/* 新手注意事项 你需要先去 pypi 注册一个账号,给你的包起一个名字(搜一搜没有被占用就行),然后用 pip 在本地安装 twine,这个是用来上传到 pypi 的工具。 目录结构需要注意,你的项目目录结构应该是这样的,要把 setup.py 放在外面: setup.py 的内容大致如下;可以抄我的,改改名称、版本、描述就行,非常简单。 import codecs import os from setuptools import setup, find_packages # these things are needed for the README.md show on pypi (if you dont need del…
  • cornradio
    我之前再我的程序里面 用了一个第三方库:simple_term_menu,提供菜单功能。但是当我再windows上尝试跑一下终于写好的程序时,竟然不能用。原因是它依赖于 termios 库, 不支持 win 。 因为我的功能需求比较简单,我决定自己下一个代替品,就是这个 dumb_meun 了。 主要要实现的功能: 传入一个 list ,显示菜单, 返回选中的 index 上下键选择 enter建确认 *支持快捷键 因为python没有提供类似于c语言中的getchar函数,再 linux 上用 termios 库可以实现,但是在windows上使用的是 msvcrt 库。所以实际上在 python 中实现起来不是很容易。 def get_key(): #get keypress using getch , msvcrt = windows or termios = linux try : import getch first_char = getch.getch() if first_char == '\x1b': #arrow keys a=getch.getch() b=getc…
  • zahui
    所有的资本家都在做同一件事情,那就是想尽一切办法让普通人变穷,和普通人拉开差距。 我们都说钱难挣,可有没有思考过为什么钱难挣?最根本的原因就是资本的无序扩张。或许你会觉得资本距离你很远,资本扩张影响不到你,那你就太小看资本的力量...
  • tink
    按照 https://www.ecoo.top/usbflash/usbflash.html 教程把1001版本的固件刷好,重启。下载附件,解压缩后用 scp 或者 sftp 或者 xshell...
  • cornradio
    安装 pip install simple_term_menu ⚠️ 不支持windows 这个菜单库使用非常简单,只需要传入一个列表,就可以生成一个菜单,返回值就是选择的菜单项的索引。 支持J K/⬆️ ⬇️ 键移动 支持/斜杠搜索 支持快捷键(传入的 string 如 [q] 退出 ,q 就变成快捷键了) 好看! 还有更多功能,我没有仔细研究,参考>这里< 封装成函数,方便调用 from simple_term_menu import TerminalMenu def menu(choices:list): terminal_menu = TerminalMenu(choices,title="扫描结果转换XML工具 v1.0 (230208)\n---",show_search_hint=True) index = terminal_menu.show() print("执行", choices[index]) if choices[index] == "[h] 文档": import webbrowser webbrowser.open('http://exampl…
  • cornradio
    说到数据库设计软件,之前上学的时候用过 powerdesigener 、 navicat设计数据库。 但是都是付费软件,今天找到了一个免费的数据库设计工具 dbdiagram.io。 首先,以防你看完了文章才发现自己不喜欢这个,先来看一下截图: 一般操作就是左边写语句,右边可以拖拽生成外键,设计好了之后可以生成各种数据库的 sql 语句,也可以PDF导出。 这里使用的语句叫做 dbml 语句,语法类似sql建表语句,具体语法参考这个链接,这个语言是 dbdiagram.io 自己的,可能需要小小的学习一下。 我这里在 vscode 中安装了一个 dbml 插件,可以在 vscode 中写设计语句,通过 copilot (AI插件),我只要写好备注,就可以自动生成大段的语句。 关于外键的用法其实也非常的符合直觉:你只需要使用 - > 之类的富豪榜,就能轻松的表示一对一、一对多的关系。 最后用 datagrip 导入生成的 sql 语句到 mysql,简直不要太爽!导出操作比我之前用过的那些软件方便得多!
  • cornradio
    install sougou for ubuntu you can follow this guide download and install download sougou here fix every thing sougou need sudo apt install fcitx sudo cp /usr/share/applications/fcitx.desktop /etc/xdg/autostart/ sudo apt purge ibus sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2 sudo apt install libgsettings-qt1 install the package again sudo dpkg -i sougou...deb reboot settings and stuff gotoubuntu settings - Region & Language - Manage installed Languages cho…
  • cornradio
    install Qv2ray install qv2ray in snap store. get core of Qv2ray go to this link on git hub to download >this link< unzip core to whatever floder, set up the core path in Qv2ray - Preferences - Kernel Settings and it’s all done! use your phone as a proxy router , speed up download process. settings after you get your servers into Qv2ray , you have to goto ubuntu settings and set upsystem proxy to make it work go to system proxy - Network Proxy set 127.0.0.1:1089 for socks(this is default po…