Saber 酱的抱枕

Fly me to the moon

09/19
2016
学习 软件

获取半次元(bcy.net)coser作品的大图网址

document.body.insertAdjacentHTML('beforeend', `<div id="shouUrl" style="position: fixed; right: 0px; top: 100px; padding: 15px 20px; background: rgb(46, 178, 234); color: rgb(255, 255, 255); border-radius: 5px; text-align: center; line-height: 24px; font-size: 16px; cursor: pointer;">显示大图url</div>`);
document.querySelector("#shouUrl").addEventListener("click", () => {
	let newW = window.open();
	document.querySelectorAll(".img-wrap img").forEach(el => {
		newW.document.write(/.*(\.jpg|\.png)/.exec(el.src)[0].replace(/p\d.*banciyuan/, 'img-bcy-qn.pstatp.com') + '<br>');
	});
});

使用方法:
打开任意的cos作品页面,然后在浏览器的控制台里执行上面的代码。

你也可以在此安装本代码的UserScript版(推荐)。

当手动执行了代码或点击UserScript生成的按钮之后,浏览器会打开一个新的页面,并显示作品上所有图片的url:

获取半次元coser作品的大图网址

复制全部网址,用下载软件批量下载即可。

注意:
1.由于本工具会打开一个新页面并输出url,所以当你遇到脚本运行完了却没有弹出新页面的时候,请看一下是不是弹窗是被浏览器拦截了。
2.由于半次元图片的文件名是随机生成的字符,所以下载下来的图片顺序可能是混乱的。

获取半次元(bcy.net)coser作品的大图网址

09/18
2016
学习

使用CSS滤镜将网页变成黑白(灰色)

body {
	filter:grayscale(100%);
	-webkit-filter:grayscale(100%);
	-moz-filter:grayscale(100%);
	-ms-filter:grayscale(100%);
	-o-filter:grayscale(100%);
	filter:url("data:image/svg+xml;	utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
	filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
	filter:gray;
	-webkit-filter:grayscale(1);
}

之前我也发过一篇文章,实验了用css滤镜将网页变成灰色,但是那个不太完善。

今天在百度百科看到某位明星的词条变成黑白了,便扒下来代码保存一下。

但是这份代码也有个没能解决的问题:
无法把body上设置的背景图片变成灰色。

使用CSS滤镜将网页变成黑白(灰色)

09/16
2016
其他

糟心的事

我儿,你若为朋友作保,替外人击掌,你就被口中的话语缠住,被嘴里的言语捉住。

昨天本来我们中秋放一天假,结果发生了一件糟心的事。

这件事情的主要人物是3个。我以前的老板A,我现在的老板B,我。老板A和老板B是合作关系。

今年3月份,老板A给他手下一个年级有点大的人租房,看中了一个小区里的房间,但是那个小区只允许40岁以下的人签租。老板A和老板B一商量,让我去签约。

我一向是个“老实人”(这词的意思基本就是窝囊废),因为我在老板A手下干了一年,在老板B手下当时干了也有半年了,想了一下我还是同意了。

然后签约了一年租期,所有信息都填的我的。一年的房租先打了京东白条,然后按月还。每月我先交房租,老板A再把钱给我打过来。

房子我没去看过,具体位置我都不知道。住的那个人我也没见过。不过这些上面倒没出啥问题,最近退房时,出了坑爹的问题。

8月下旬,老板A说要退房,让我这边和租房公司联系。客户经理说有两种方式:

1.退租,有30天的交接期,这30天里可以正常住,需正常交一个月房租,到期后扣70%押金。(重点就是30天里需要交一次房租)
2.转租,自己找个人转租,签订转租合同,扣50%月租。(这个省钱,但是我们身边没有需要转租的人)

在租房公司官网上也可以申请退房,也是只有这两种方式。

老板们说那个最划算最省钱就按哪个来。转租省钱啊,但是我对房子信息一无所知,我发个P的转租信息。后来我给他们说转租我弄不了,要弄他们自己弄。过了几天,老板B说先不弄退房的事了,这件事搁置了下来。

9月13日,老板A说房子怎么还没退掉(wtf,老板B说先不弄了啊)?他说让老板B去联系退房吧。然后我给老板B发了房子的一些信息。

重点来了

9月15日,是交房租期限的最后一天。我想,转租肯定是找不来人的,退租的话还得30天,走正规流程的话得交一次房租。于是我就交了,然后让老板A给我打钱。这下子坏事了。

老板A给我打电话说,房子已经退了,人也搬走了。他们的打算是不再交房租,押金就当做违约金烂在那里。他们这样损失的只是押金,但我现在又交了一个月房租,就白白赔进去了一个月的房租。

后来老板B也跟我打电话,说钱退不回来了,让我发转租信息,把这个月的房租从租客那里收回来。还训斥了我一通,说我知道他在退房也不先问问他。话语间的意思就是说我是个傻蛋。

【我是脑子缺根筋,但是这锅不能全扣到我头上】

我知道他们在退房,但是他们不走正规程序,这告诉我了吗?
合同是以我的名义签的,每月房租是我交的,俩老板决定这样“退房”之后,不带跟我说一声的?
京东上我还有几个月的欠条(房租),每月2400多,不走正规程序退房能消掉欠条吗?(后来我打电话问租房管家,这样竟然还真的可以解除合同,消掉白条。看来这是潜规则?我当初没想到这样退房也行)
租房管家说老板B那种方式是可以退房的,但是会对我的征信造成不良影响。这个他告诉老板B了,但是老板B没有告诉我。

但是我还是去发了转租信息。因为对那个房子一无所知(平米,家电,户型什么都不知道),下午我还跑去看了趟,拍了些照片。2点出发,8点回来。小区门口门禁卡,我没有。房间外门密码,我没有。进去后才知道这房间3卧室,我们租的只有其中一间。卧室有单独的密码,这个我也没有。但合同上毕竟是我,最后还是进去了。真TM费劲。

中秋这唯一的一天假期泡汤了,转租也不一定能租出去。

目前等转租的同时我还在办退租(退租可以选20天的,退多交的房租。但20天的不返还押金,其实和30天退租返还30%押金的差不多),剩下的我和俩老板再商量。

糟心的事

09/13
2016
学习

JavaScript过滤PHP中不允许做文件名的字符

var reg = new RegExp(/'|#|&|\\|\/|:|\?|"|<|>|\*|\|/g);
string=string.replace(reg,"_");

JavaScript本身不能方便的保存文件,所以我做的几个下载器是用ajax把文件参数传给PHP,然后由PHP去建立文件的。这个正则用来过滤掉一些不能做文件名的特殊字符/特殊符号。

这个正则去掉了以下字符串:

 ' # & \ / : ? " < > * | 

注意前3个其实是能在windows中做文件名的。只是用在url中就可能会出现意外情况。

其中'会导致php创建文件时路径异常而失败(它被当做单引号了,包裹着字符串);
#则是不能用在get传递的参数里,(因为从#开始往后的字符都会被当做锚点信息,不会被当做参数);
参数里也不能出现我们意料之外的“&”,所以&也去掉(可以考虑下替换成&的转义字符);
剩下几个是windows资源管理器中不允许做文件名/文件夹名的字符。

这个列表权当是一点微小的贡献。

JavaScript过滤PHP中不允许做文件名的字符

09/9
2016
学习

半次元(bcy.net)图片下载器发布啦

bcy.net 图片下载器 cosplay图片 id41053745

半次元(byc.net)是一个中文的cosplay交流社区,里面有许多高质量的cosplay作品。有时候,我们看到自己喜欢的cosplay作品,可能想保存下来。半次元提供直接查看原图的功能,但是一张张图片保存比较麻烦。为了简化保存步骤,我使用JavaScript+PHP做了一个简单的下载工具。

下载本工具完整版

本工具包含bcy_download.js和bcy_download.php两个文件。


配置步骤:
1.把bcy_download.php放到web环境中;
2.把bcy_download.js的phpPath变量的值配置为为bcy_download.php的url。
phpPath的默认值为:

http://127.0.0.1/bcy_download.php

使用步骤:
1.在半次元的cosplay图片详情页面执行bcy_download.js中的代码。(你可以复制bcy_download.js代码然后打开控制台手动执行;也可在greasyfork.org安装本UserScript脚本来自动执行)

2.页面右上角出现一个下载按钮:
bcy.net 图片下载器 cosplay图片

3.点击即可开始下载。下载按钮上会有进度提醒:
bcy.net 图片下载器 cosplay图片

等到下载完成,会有弹窗提醒。
bcy.net 图片下载器 cosplay图片

下载的图片会存放在bcy_download.php同目录中的bcyimg文件夹中:
bcy.net 图片下载器 cosplay图片

bcy.net 图片下载器 cosplay图片


注意事项:
1.下载时可能会在一张图那里卡很久,等待即可。(我这边经常下几张就卡住一会儿,不知道半次元对于连续访问大图有没有做限制)
2.由于bcy_download.php会创建中文文件夹来保存图片,所以本工具仅建议在简体中文版本的Windows操作系统上使用。在其他系统上使用可能导致创建的文件夹名字变成乱码。
3.本工具仅做交流学习之用,请合理使用。下载的图片仅供收藏,请勿未经coser授权随意传播。因使用本工具产生的任何问题,本人概不负责。

半次元(bcy.net)图片下载器发布啦

09/5
2016
学习

dedecmschannelartlist如何按typeid指定顺序排列

dedecms的channelartlist是一个很有用的标签,可以一次调用多个栏目,进行循环输出。例如:

{dede:channelartlist typeid="9,6,3"}
 <a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a>
{dede:arclist row=6 titlelen=30 }
    <li><a href="[field:arcurl/]" title="[field:title/]" target="_blank">[field:title/]</a></li>
{/dede:arclist}
{/dede:channelartlist}

有时候,我们想让栏目的出现顺序不按栏目id排列,而是手动指定。但是channelartlist标签是按照栏目id从小到大输出的,那么怎么改呢,打开/include/taglib/channelartlist.lib.php,找到79行的

sortrank ASC

替换成

FIELD(id,$typeid)

保存之后就ok了~

dedecmschannelartlist如何按typeid指定顺序排列

09/4
2016
ACG

late in autumn

late in autumn 某科学的超电磁炮 南条爱乃

late in autumn(网易云音乐)

这首音乐是fripSide的《late in autumn》,歌手是南条爱乃。最早发行在超电磁炮的音乐CD《only my railgun》里,不过这是一首独立的歌曲,和超炮剧情没有关联。

我是两年前听这张CD才知道了这首歌,一见倾心。bgm、歌声、歌词都非常棒。前几天我在b站上看到了这个现场Live,现场也很赞,于是转过来一份。

前年冬天,我用这首歌曲做了好久的手机铃声和闹钟声音。现在一听到这首歌还会不由得想起冬天那种寒冷的感觉。那时下班后天色已黑,走在街道上树木萧条,空气清冷,那时我经常循环这首歌。这首歌里清冽的打击乐器的声音,南酱细细的声线,与冬天是那样的般配,听着听着,感觉……更冷了

不过这首歌也不全然是“冷”,在悲伤的基调里也有着坚定和积极的情绪,就像冬天里的一团火焰,让人感觉虽然身体冰凉,心还是热的。(我对冬天到底是有多大的怨念啊……大概是被冻傻了)

说起来,炮姐也有点时泪的感觉了……天国的魔禁三超炮三怎么还不出,还有凉宫三(

late in autumn

09/2
2016
学习

在 dedecms后台管理网站文件

在 dedecms后台管理网站文件

有时候我们可能只有网站后台,没有ftp和服务器管理权限。这时候如果要修改网站文件,可以使用 dedecms后台的“文件管理器”功能。

刚才一位朋友说他用的是二次开发的 dedecms后台,菜单里找不到文件管理器。于是我找了下文件管理器使用的php文件,这个文件是后台目录里的file_manage_main.php。输入此文件的url就可以正常使用文件管理器。

示例:

http://ex.com/dede/file_manage_main.php
http://ex.com/dede/file_manage_main.php?activepath=%2Fskin%2Fcss

在 dedecms后台管理网站文件