2020年3月

在爬虫时, 有的网站要登录, 登录时需要短信验证, 因为爬虫是跑在服务端上, 所以希望服务器能实时获取到手机上的短信,使爬虫能够自动化. 为此自己开发了个能实时将安卓手机上的短信转发到服务器上.

展示如下:(将手机短信发送到服务端并储存起来,然后可以网页形式访问这些短信.

链接:https://pan.baidu.com/s/1zy1pBi0DQPmxIspx6Jnwsw 
提取码:4qwy 

前言: 网上关于一张mysql表最多可以创建多少个索引?基本就是两种答案,一种是不限制,一种是16列, 我认为16的由来应该网上传着传着给扭曲, 因为mysql的单个索引最多能包括16列,但是这个是一个索引包含几列的答案而不是一张可以建多少个索引.真的是误导人啊! 为此我一顿好找终于在官网找到了权威答案, 现将mysql表的一些限制做一个总结, 希望能帮到对此有困惑的朋友们, 有用就赞下啦 ~_~

因为mysql的一些限制跟具体存储引擎有关,为此以下只列出我们最常用的innoDB和myisam,其他存储引擎的具体限制可以去官网找.
  • innoDB: 最多创建1017列, 最多64个二级索引, 单个索引最多包含16列, 索引最大长度767字节(其实行格式为REDUNDANT,COMPACT最高为767字节,但行格式为DYNAMIC,COMPRESSED最高可达为3072字节), 行大小最大65536字节
  • mysiam: 最多4096列, 最多64个索引, 单个索引最多包含16列, 索引最大长度1000字节, 行大小最大65536字节
以上都整理自mysql官方文档,有兴趣可以自己去看看

有多个文件需要进行逐个单独分享, 如果手动那么是很累而且容易眼花出错. 为此博主写个了批量分享链接的脚本.有两种使用方法:其一为直接在console窗口中执行代码,其二为使用谷歌浏览器加载扩展.

方法1(较快,暴力)

  • 访问网页版百度云网盘(地址:https://pan.baidu.com )并登录
  • 多选好后你要分享的多个文件
  • 按下f12,此时浏览器弹出调试框,然后你将以下的代码复制进去,回车执行.之后在页面右上角会多个批量单独分享按钮.

    (function () {let expiration = 0;/*链接的有效期: 0为永久; 7为7天; 1为1天*/let div = document.createElement("div");let html = "<div id='shareWindow' style='position: fixed;z-index: 999;right: 0;'><button id='batchShare'>批量单独分享</button><button id='toggleResult' style=''>显示/关闭结果</button></div><div id='shareResult' style='display: none;position: relative;background-color: wheat;margin: auto;padding-top: .5rem;font-size: 16px;scroll-behavior: auto;text-align: center;max-width: 50%;z-index: 900;' contenteditable='true'>空空</div>";div.innerHTML = html;let result = [];document.getElementsByTagName("body")[0].append(div);document.getElementById("batchShare").onclick = function () {let list = [];result = [];document.querySelectorAll('.vdAfKMb dd.icP4Eo').forEach(function (e, index) {e.classList.remove("icP4Eo");list.push(e.attributes._position.value);});console.log(list);if (!list.length > 0) {alert('请选择要分享的文件');}loop(list);};document.getElementById("toggleResult").onclick = function () {console.log(result);if ("block" === document.getElementById("shareResult").style.display) {document.getElementById("shareResult").style.display = "none";return;}let str = "";for (let k in result) {str += k + ": " + result[k][0] + " ; 提取码:" + result[k][1] + "\r\n";}document.getElementById("shareResult").innerText = str;document.getElementById("shareResult").style.display = "block";};function loop(list) {let n = list.shift();if (!n) {return;}let t = document.querySelector("dd[_position='" + n + "']");triggerEvent(t, "click");document.querySelector("[data-button-id='b41']").click();let i1 = setInterval(function () {let forever = document.querySelector(".choose-list li[value='" + expiration + "']");if (forever) {clearInterval(i1);triggerEvent(forever, "mousedown");document.querySelector("[class='g-button g-button-large g-button-blue-large sbtn create']").click();let i2 = setInterval(function () {let pw = document.querySelector("input.share-password").value;let href = document.querySelector("input.share-url").value;let file = document.querySelector("#share .select-text").innerText.replace("分享文件(夹):", '');if (pw.length > 0 && href.length > 0) {clearInterval(i2);document.querySelector("input.share-url").value = '';document.querySelector("input.share-password").value = '';console.log(file, href, pw);let r = [];result[file] = [href, pw];if (!(list.length > 0)) {document.querySelector("[class='g-button g-button-large g-button-large-gray abtn close']").click();document.querySelector("#toggleResult").click();alert('done');}loop(list);}}, 200);}}, 200);}function triggerEvent(el, eventName) {try {var evt = document.createEvent('Event');evt.initEvent(eventName, true, true);el.dispatchEvent(evt);} catch (e) {console.log(e);}}})();
  • 点击批量单独按钮(链接默认都是永久有效,若要改为短期请查看前几行代码并按提示更改即可),接下来静候其完成不要做其他操作,完成后会弹出所有结果列表.

方法2(作为一个谷歌浏览器扩展,加载进来即可使用)

  • 打开谷歌浏览器,地址中输入chrome://extensions/回车访问
  • 下载下面的谷歌扩展插件并解压.点击开启右上角的开发者选项,然后点击左上角的加载已解压的扩展程序,选择刚下载的文件夹加载.

  • 访问网页版百度云网盘(地址:https://pan.baidu.com )并登录
  • 此时页面右上角会多个批量单独分享按钮,在你多选你要分享完后按下此按钮,然后静候其完成即可.

之前,百度云分享文件时都可以选择分享类型是私密(即有提取码)或者公开(即无提取码的)的,但是最近发现没有了公开分享这个选项了, 默认就是私密的.这对于有些文件直接公开就可以了,还要提取码(麻不麻烦啊~~).如果你也怎么想,那么follow me~_~

  1. 登录网页版的百度云.(百度云登录地址:https://pan.baidu.com)
  2. 选择你要分享的文件,然后点击分享,此时弹出分享框, 此时按下f12,复制以下代码到console这个窗口上回车执行; 最后点击创建链接按钮,你分享将是公开链接无需提取码

    if(document.getElementById("share-method-private")){document.getElementById("share-method-private").value="public";alert("执行成功,请点击创建链接生成你公开链接!")}else{alert("请先选择要分享的文件并弹出分享框后再执行此代码!(但在点击创建链接按钮前执行该代码)")}
    
  • 注意: 代码一定要在你弹出了分享框后执行,框没弹出来之前执行无效; 代码执行一次就够了,只要不刷新页面之后分享都是公开链接.
  • 成功分享后图片:
    png

png