作者: kukey-admin

  • android studio安装以及使用

    官网下载软件

    https://developer.android.google.cn/studio

    下载完成之后的软件名称(有相关的软件版本号)

    android-studio-2022.1.1.19-windows.exe

    接下来安装可以查看这个视频,其中的p3、p4、p5

    https://www.bilibili.com/video/BV1j44y1K7JQ

    总结几点:安装时网站要保证流畅稳定。不然有些部分需要重来,因为有很多东西需要下载,但是第一次下载完成之后就好很多,后面的应用就不用再去下载一些包之类的了。

    安装过程中有一个

    use legacy android.support libraries勾选项,不用勾选,详细原因可以查看csdn这篇文章

    https://blog.csdn.net/sunbinkang/article/details/124592368

    创建安卓机时,如果出现A system image must be selected to continue提示,按照这个教程去下载相关的安卓镜像即可。

    https://blog.csdn.net/weixin_41217541/article/details/106566065

  • win桌面远程连接

    win10远程桌面连接报错:出现身份验证错误,要求的函数不受支持(CredSSP)

    https://blog.csdn.net/qq_32682301/article/details/116003700

     

    如何出现密码输入正确,但是依然登录不进去,提示“登录没有成功”,可以尝试输入用户名的时候,加上目标远程桌面的IP\用户名,

    例如,这样输入会提示“登录没有成功”:

    计算机(C):10.160.53.14:8888

    用户名:admin

    密码:pwd

    那就这样输入:

    计算机(C):10.160.53.14:8888

    用户名:10.160.53.14\admin

    密码:pwd

    这里的IP、用户、密码都是远程桌面的那台服务器上的信息。

    ——-

  • kettle定时器脚本

    https://blog.csdn.net/huiweizuotiandeni/article/details/54382639

    https://www.cnblogs.com/gossip/p/5574929.html

    https://www.cnblogs.com/wxjnew/p/3620792.html

    代码块里的内容是用来在windows里面执行kettle的定时任务的脚本

    pan-转换执行器
    转换文件后缀(示例):
    xxx.ktr
    kitchen-作业执行器
    作业文件后缀(示例):
    xxx.kjb

    —代码块里的log文件夹需要先去创建出来 logfile是append方式添加—

    #窗口标题名称
    title xxxx
    #kettle工具路径
    cd E:\Kettle工具
    #命令 作业入口路径 日志输出等级 日志输出路径
    kitchen /file D:\邵义雪FCRP-D第一次考题-2022年5月31日\邵义雪-FCRP-D\Kettle /level Basic /logfile D:\邵义雪FCRP-D第一次考题-2022年5月31日\邵义雪-FCRP-D\Kettle\log\log.log
    pause

    —代码块—

  • fr-冷知识

    数据集里日期参数必须使用完整的日期格式(最基本完整日期具体到日),

    比如

    帆软内置数据集里

    SELECT * ,strftime('%Y-%m',出生日期) FROM 雇员
    where 城市='${dq}' and 性别='${id}'  and strftime('%Y-%m',出生日期)=strftime('%Y-%m','${rq}')

    这里的${rq}必须具体到日,1983-08-30.填写到月的话查不到东西。

    如无必要,【继承模板参数】不要勾选,另外就是尽量每个模板的模板参数必须命名最好保持唯一。

    要是勾选的话,下级页面有相同名称的参数,会冲突。挂在决策平台后,下级页面相同的那个参数会优先使用上级传下来的参数,下级页面设置的参数会失效。

    举个例子,我在上级页面有一个组件名称是p2,报表块单元格中网络报表传参时勾上了那个选项,下级页面也有一个p2的模板参数,上级p2是一个日期格式的字符串,下级页面的p2是2个汉字,众所周知,模板参数是用来设置默认值的,所以当我在决策系统中从上级页面下钻到这个下级页面时,下级的模板参数未生效,预想效果是,点进来的图表应该正常显示内容的,但是现在必须点一个相关联的参数才能显示,也就是说当前模板的模板参数失效了。

    排查一下:点击相关参数后图表可以正常显示,也就是说参数应该是能够正常传递值的,那为什么我设置的默认值模板参数无效呢?拖出来2个文本框组件,在里面输入当前模板里的2个模板参数,然后发现其中一个参数是一个日期,但是设置的并不是日期,而是两个汉字。懂了,一定是其他页面传过来什么东西了。去上一个页面找了一遍,发现有单元格勾选了【继承模板参数】,取消勾选,问题解决。

     

  • windows批处理遍历当前目录的文件

    新建txt文件,

    把以下代码复制进txt,.txt后缀修改为.bat,双击此文件

    @echo off
    for /f "delims=" %%i in ('dir /s/a-d /b *.*') do echo %%~ni>>JustName.txt
    start JustName.txt
    
    pause

     

     

  • 快速搭建私人网盘-Cloudreve

    github地址:

    https://github.com/cloudreve/Cloudreve

    简介

    Cloudreve是个公有网盘程序,你可以用它快速搭建起自己的网盘服务,公有云/私有云都可。Cloudreve底层支持 本机存储、从机存储、阿里云OSS、又拍云、腾讯云COS、七牛云存储、OneDrive(国际版/世纪互联版),每种存储方式的上传下载都是客户端直传。具有以下特性:

    • 支持本机、从机、七牛、阿里云OSS、腾讯云COS、又拍云、OneDrive (包括世纪互联版) 作为存储端
    • 上传/下载 支持客户端直传,支持下载限速
    • 可对接Aria2离线下载(支持所有存储策略,下载完成后自动中转)
    • 在线压缩/解压缩、多文件打包下载(支持所有存储策略)
    • 覆盖全部存储策略的WebDAV协议支持
    • 文件拖拽管理,拖拽上传、目录上传、流式上传处理
    • 多用户、用户组
    • 创建文件、目录的分享链接,可设定自动过期
    • 视频、图像、音频、文本、Office文档在线预览
    • 自定义配色、黑暗模式、PWA应用、全站单页应用
    安装
    #解压获取到的主程序 
    tar -zxvf cloudreve_VERSION_OS_ARCH.tar.gz 
    # 赋予执行权限 
    chmod +x ./cloudreve 
    # 后台启动 Cloudreve并在当前目录下输出nohup.out日志文件 
    nohup ./cloudreve &
    查看日志文件查看初始化的账号和密码
    tail -f nohup.out

     

    loudreve 在首次启动时,会创建初始管理员账号,请注意保管管理员密码,此密码只会在首次启动时出现。如果您忘记初始管理员密码,需要删除同级目录下的cloudreve.db,重新启动主程序以初始化新的管理员账户。

    Cloudreve 默认会监听5212端口。你可以在浏览器中访问http://服务器IP:5212进入 Cloudreve。以上步骤操作完后,最简单的部署就完成了。

    文章来源:https://www.51cto.com/article/686657.html

  • python:pandas中dataframe的基本用法汇总

    python:pandas中dataframe的基本用法汇总

    https://www.cnblogs.com/timotong/p/9678490.html

    删除指定的行

    https://verytoolz.com/blog/380cf7b3a1/

  • uniapp学习记录

    如何引入iconfont?
    https://www.bilibili.com/video/BV1er4y1w7ao?p=9&spm_id_from=pageDriver&vd_source=1daa8b3ed9fa55a6abbdd09565d8d635
    此课程的p8讲到了引入官方css样式库,p9讲到了引入自定义图标库,p10讲了引入css动画库。
    黑马的项目可以小白学习
    https://www.bilibili.com/video/BV1BJ411W7pX?p=6&spm_id_from=pageDriver&vd_source=1daa8b3ed9fa55a6abbdd09565d8d635
    前几个p讲到了如何添加tabBar

    一个vue页面(vue文件)只能有一个根节点,比如只能有一个最外面的view组件
    <template>
    <view>
    //只能有一个最外面的view
    </view>
    </template>
    最外面的view不能有多个,例如:
    <template>
    <view>
    </view>
    <view>
    </view>
    </template>

     

    数据绑定使用v-bind。

    平常使用可以直接使用:关键字代替v-bind:关键字,

    :key=””

    :src=””

    使用v-for时,请注意同时需要绑定一个key,

    为什么使用v-for时必须添加唯一的key?

    https://juejin.cn/post/6844903577215827982

    绑定数据自然页可能需要绑定事件,使用v-on绑定事件,

    v-on:=”事件函数名”

    事件函数定义在method块里面。

    如果事件里传递了参数,就需要加括号加参数了,

    v-on:”事件函数名(参数)”

    mthods块里也当然有括号有参数了,

    事件函数名(参数){

    功能…

    }

    若只传递一个事件对象,v-on可以不用加括号

    v-on:”事件函数名(e)”

    事件函数名(e){

    console.log(‘clicked me’,e)

    }

     

    若想传递参数又想把事件对象传递过去,在v-on里则需要使用事件对象的别名$event,

    v-on:”事件函数名(参数,$event)”

    事件函数名(参数,$event){

    console.log(‘clicked me’,参数,$event)

    }

    一般使用v-on时,可以使用@符号代替,分号也不需要了,

    @”事件函数名(e)”

     

    uni生命周期

    https://uniapp.dcloud.net.cn/collocation/App.html

     

    页面的生命周期

    https://uniapp.dcloud.net.cn/tutorial/page.html#lifecycle

     

    下拉刷新可以用来阻止太频繁的加载数据,

    页面触底可以用来加载下一页的数据,

     

    发送get请求,

     

  • 书源制作学习

    https://alanskycn.gitee.io/teachme/

     

    语法规则

    比如书籍列表规则,一般直接查看元素,把书籍最外面的那个class获取出来即可,如class=”container search-card“,填写规则时,把等号换成英文下的“.”,然后把后面的class名称前后的引号删除即可,

    class.container search-card

    tag是获取标签的意思,比如封面规则,封面一般是img标签,要想获取它,就tag.标签名即可,

    tag.img

    要想获取img标签的元素属性,则可以使用@符合,如获取img标签下的alt属性,tag.img@alt即可,

    tag.img@alt

    你也可以获取某个class下面的一个a标签的某个标签属性,比如我想获取封面,

    标签的下一级标签使用@分割

    class.container search-card@tag.a@href

    根据上面的使用案例,若获取作者名称出现多余的文字之类的东西,可以使用正则表达式处理文字,比如我获取出来的作者名称的两边有中括号,我想把中括号去掉,可以使用##号来分割,以##号来结束,双#号之间添加正则表达式,双##结束后面添加要替换的字符即可,

    获取了作者名称

    class.sc-title@tag.a@title

    若一个标签下出现了多个a标签,我怎么获取其中一个呢?我们可以指定位置,若获取第一个a标签可以使用0,若最后一个可以使用-1,若第二个可以使用2,语法是a.数字,比如

    class.sc-title@tag.a.2@title

    添加正则表达式

    class.sc-title@tag.a@title##正则表达式内容##

    因为这次获取到的作者名称两边是中括号,并且作者名两边各有一个空格,再次才是中括号,所以,我们直接把它转义掉空白即可,

    若转移成空白的话,双##结束后面甚至都不用写,默认为##正则表达式内容##空白内容

    中间想要添加多个正则表达式的话,使用“|”符号即可。

    class.sc-title@tag.a@title##\[ | \]

    目录列表规则

    若出现多个class名称全部一样,一个class里面有两个名字,我们可以只取后面的那个名字,

    <div class=”border-b chapter-list”>

    只取后面的那个即可

    class.chapter-list

    章节名称规则

    查看元素时发现有两个span标签,有章节名字标签的span是第一个,我们可以获取第一个span的text,

    tag.span.0@text

    正文规则

    查看任意一段文字的元素时,我们可以发现正文的一般都在p标签里面,正文的父标签是id=”chapter-content“,我们可以获取正文父标签下的所有p标签内的文字内容,

    id.chapter-content.tag.p@text

    我们也可以使用另一种方式获取正文里所有的p标签,

    id.chapter-content.tag.p@html

    但是总有一些我们不要的内容,比如第一个p标签里面的内容不是我们想要的,那么我们可以排除掉第一个p标签,使用!号可以排除标签,语法:!数字,这样就可排除指定的标签了,

    id.chapter-content.tag.p!0@html

    但是发现还有2各p标签不是我们想要的,可以使用:号分割,语法!0:3:5,比如我们现在不想要第1、第4、第6个个p标签,

    id.chapter-content.tag.p!0:3:5@html

    突然发现所有我们不想要的文字虽然都在p标签里面,但是那些文字的外面又包裹了一层标签,那就是说,我们需要的文字其实只是p标签内的文字,p标签下有其他标签的内容我们不要,我们可以直接获取p标签的直系文本,语法@textNodes,

    id.chapter-content.tag.p@textNodes

    若只想获取标签自己的内容,不获取下级标签里的内容,可以使用@ownText方法,

    id.chapter-content.tag.p@ownText

    若网站编码格式为gbk的话,那我们在书源搜索规则里的最后面要加上{“charset”,”gbk”},只要网站上的编码类型有gbk三个字,都填写gbk。

    若想获取目录的话,还有一种方法,比如获取小说目录,我们可以直接找关键字,然后获取该文字所在的href属性,

    text.章节目录.href

    比如某些网站的下一页变来变去的,可以使用这种方法来获取其中的下一页链接。

     

    若网站的搜索类型是post类型的,可以审查元素找到搜索框input的整个div,然后获取搜索框的name值,和后面的name值,搜索地址那里填上当前网站的网址后,加上刚才获取的name值和type值,

    https://b.8bqg.net/s.php.(“charset”:”gbk”,”method”:”POST”,”body”:”s={(key)&type=articlename”}

    还有类似的搜索框可以选择书名和作者的,

    <select id=”searchType”name=”searchtype’
    style=”display:none”><option
    value=”articlename”></option><option
    value=”author”></option></select>
    <td style=”background-color:#fff;border:1px
    solid #CCC;”><input id=”s_key”name=”searchkey”
    type=”text”class=”key”></td>
    <input name=”t_btnsearch”type=”submit”value=””
    class=”go”onclick=”check()”></td>
    </tr>

    我们可以选择其中的标签id和下级搜索框的name

    searchtype=articlename&searchkey={{key}}&t_btnsearch=

    searchtype=articlename是指整个select标签的name等于value用来确定一个标签,

    searchkey={{key}}是指select下面的option下的input的name值等于value用来确定使用搜索书名,而不是使用作者搜索。并且按下下面的提交按钮的,提交按钮的name值是t_btnsearch。

    若发现规则不填的话,就会调用搜索规则,若发现规则和搜索规则一样的话,就可以这样用了,或者直接把搜索规则里添加上发现规则即可,规则分割可以使用|符号。

     

    @js:java.log(result)

    可以获取查看整个网页的源码

     

    @js:后面可以写js代码