最近买了个 Downie,应该是目前 macOS 上用地最舒服最方便的下载器了。
偶尔会去小红书上看看付鹏的视频,想保存但是小红书好像不支持。所以可以先批量复制视频链接,再丢给 Downie 下载。
但是要注意一点,小红书给的链接是短链接,需要先手动转为原始链接,再丢给 Downie,可以使用下面这条命令转换为原始链接
pbpaste|grep -Eo "http://xhslink.com/[a-zA-Z0-9]*"|xargs curl -sIL|grep Location|sed 's/Location: //'|pbcopy
偶尔会去小红书上看看付鹏的视频,想保存但是小红书好像不支持。所以可以先批量复制视频链接,再丢给 Downie 下载。
但是要注意一点,小红书给的链接是短链接,需要先手动转为原始链接,再丢给 Downie,可以使用下面这条命令转换为原始链接
pbpaste|grep -Eo "http://xhslink.com/[a-zA-Z0-9]*"|xargs curl -sIL|grep Location|sed 's/Location: //'|pbcopy
👍2🔥1
macOS 自带的 grep 是 BSD grep 2.6.0,在实际使用需求中,需要用到零宽断言正则,这是 GNU grep 才有的功能。
所以可以使用 brew install grep 安装 3.7 版本的 grep,添加 -P 参数使用零宽断言正则功能。
例如使用 pipe 输出、解码、过滤出所需要的 URL,最后将过滤出的 URL 复制到剪切板
pbpaste|decode|grep -Po '(?<==)https://.*(?=&)'|pbcopy
GNU Grep 3.7
Bash: grep with LookBehind and LookAhead to isolate desired text
所以可以使用 brew install grep 安装 3.7 版本的 grep,添加 -P 参数使用零宽断言正则功能。
例如使用 pipe 输出、解码、过滤出所需要的 URL,最后将过滤出的 URL 复制到剪切板
pbpaste|decode|grep -Po '(?<==)https://.*(?=&)'|pbcopy
GNU Grep 3.7
Bash: grep with LookBehind and LookAhead to isolate desired text
👍1
Instagram 秒杀捷径更新
- token 文件名错误修正
- 增加了项目下载完成的通知
- 最后加了返回 Instagram 的操作,方便使用
该捷径已稳定运行数月,基本没有什么问题,可以放心使用。初次使用或更新捷径,请在首次运行后删除开头的 if 语句块。
使用建议:建议将图片保存目录设置为 Instagram,方便管理和查找从 Instagram 上下载的图片。
#捷径 #Shortcuts
- token 文件名错误修正
- 增加了项目下载完成的通知
- 最后加了返回 Instagram 的操作,方便使用
该捷径已稳定运行数月,基本没有什么问题,可以放心使用。初次使用或更新捷径,请在首次运行后删除开头的 if 语句块。
使用建议:建议将图片保存目录设置为 Instagram,方便管理和查找从 Instagram 上下载的图片。
#捷径 #Shortcuts
👍1
晚上群里讨论的问题,感觉挺有意思的,分享分享。需求是在 shell 里构建一个 JSON 数据,原始的解决方案如下,content 行使用引号很不方便,需要跟单双引号斗智斗勇。
notice_text='{
"token": "pushplusToken",
"title": "断网啦断网啦",
"content": "'"${current_wan_ipaddr}"'",
"template": "json"
}'
所以可以用 jq 解决,先定义 JSON 模版,使用 jq 通过 --arg 参数将 IP 地址变量传入,修改 content key 对应的 value,最后赋值给 notification,用 curl post 推送到微信。
notice_text='{
"token": "pushplusToken",
"title": "断网啦断网啦",
"content": "'"${current_wan_ipaddr}"'",
"template": "json"
}'
所以可以用 jq 解决,先定义 JSON 模版,使用 jq 通过 --arg 参数将 IP 地址变量传入,修改 content key 对应的 value,最后赋值给 notification,用 curl post 推送到微信。
This media is not supported in your browser
VIEW IN TELEGRAM
Shortery + Shortcuts + HomeKit = 自动开关挂灯
#骑车随想 以前看过一句话说,并不一定要成为高手才能去教人一项技能。
加了一点自己的理解:如果在一个领域,自己学过了50%的内容,能把前20%的内容理解地非常透彻,那么就可以针对入门新手去教学这20%的内容。和其他同类的教程做出差异化,比如哪里有坑要注意,什么样的实现方式是最优解?做出自己的产品特色。如果一份教程,足够详细,质量够硬,那么市场自然也是会有的。
加了一点自己的理解:如果在一个领域,自己学过了50%的内容,能把前20%的内容理解地非常透彻,那么就可以针对入门新手去教学这20%的内容。和其他同类的教程做出差异化,比如哪里有坑要注意,什么样的实现方式是最优解?做出自己的产品特色。如果一份教程,足够详细,质量够硬,那么市场自然也是会有的。
👍5
Pixelmator Pro 可以向 Finder 里添加图片自动化抠图操作,测试了十来张照片,使用非常方便,有兴趣可以试试看。
https://www.inputmag.com/guides/how-to-remove-background-from-image-macos-finder-one-click-no-photoshop
https://www.inputmag.com/guides/how-to-remove-background-from-image-macos-finder-one-click-no-photoshop
Input
I had no idea macOS's Finder app could do this Photoshop trick
You need the Pixelmator Pro app first. But then it’s a single click to remove the background from an image. My mind is blown. Exploded. It’s basically magic.
实用技巧文章:macOS 的「预览」有几种用法? [by jijiali]
https://sspai.com/post/73291
https://sspai.com/post/73291
少数派 - 高品质数字消费指南
macOS 的「预览」有几种用法? - 少数派
macOS 内置的「预览」这些功能你真的知道吗?
James Notes
Instagram 秒杀捷径更新 - token 文件名错误修正 - 增加了项目下载完成的通知 - 最后加了返回 Instagram 的操作,方便使用 该捷径已稳定运行数月,基本没有什么问题,可以放心使用。初次使用或更新捷径,请在首次运行后删除开头的 if 语句块。 使用建议:建议将图片保存目录设置为 Instagram,方便管理和查找从 Instagram 上下载的图片。 #捷径 #Shortcuts
之前制作的 Instagram 下载捷径现已失效, Instagram 那边弃用这个 API,如果后续还有新的 API 会在这里发布更新。这个捷径大概正常运行了半年时间,还是比较满意的一个数据了。
🤯3👍1
之前写了个 Surge 脚本用来破解今日校园,但是今天早上打开 APP,发现这货竟然强制要求升级才能继续使用,估计开发者也是意识到了某些模块要加上验证,如果更新了 APP,之前的破解方法就失效了。所以在这种情况下,可以考虑屏蔽 APP 的升级提示弹窗。
所以老规矩,Thor 开始抓包,抓了一圈下来没有任何收获,于是再换到电脑上用 Charles 抓包,依旧没有任何收获。所以这种情况下,就可以考虑逆向排除法,把改软件请求的所有链接都用 Surge 拒绝掉,然后使用二分法定位,很快找到是 mobile.campushoy.com 这个子域名下的某个链接去请求更新的。
但是在这个子域名下,还有 v3 v4 v7 v9 app 四个 API 接口,照葫芦画瓢对这四个 API 地址进行 REJECT,最后排查到是 v3 下面的 check 请求了版本更新信息,添加 Surge 规则,URL-REGEX REJECT 子域名的正则表达式,搞定,完美屏蔽强制升级。
最后看了一下返回消息体,就明白为什么当时查阅关键词看不出来了,是因为返回的数据先加密了然后编码,返回的是编码信息,所以很难一下子看出是一个软件更新的请求。
所以如果分析一个软件,正向的思路卡住了,也可以通过这样的逆向分析 + 二分排查方法,快速定位到问题的根源,再解决问题。
#Surge #今日校园
所以老规矩,Thor 开始抓包,抓了一圈下来没有任何收获,于是再换到电脑上用 Charles 抓包,依旧没有任何收获。所以这种情况下,就可以考虑逆向排除法,把改软件请求的所有链接都用 Surge 拒绝掉,然后使用二分法定位,很快找到是 mobile.campushoy.com 这个子域名下的某个链接去请求更新的。
但是在这个子域名下,还有 v3 v4 v7 v9 app 四个 API 接口,照葫芦画瓢对这四个 API 地址进行 REJECT,最后排查到是 v3 下面的 check 请求了版本更新信息,添加 Surge 规则,URL-REGEX REJECT 子域名的正则表达式,搞定,完美屏蔽强制升级。
最后看了一下返回消息体,就明白为什么当时查阅关键词看不出来了,是因为返回的数据先加密了然后编码,返回的是编码信息,所以很难一下子看出是一个软件更新的请求。
所以如果分析一个软件,正向的思路卡住了,也可以通过这样的逆向分析 + 二分排查方法,快速定位到问题的根源,再解决问题。
#Surge #今日校园
👍9
上周朋友单位发了新电脑,问我说 macOS 下什么开发工具好用,分享我的软件开发工具列表
启动器:Alfred
浏览器:Google Chrome
数据库:Navicat Premium
虚拟机:Parallel Desktop
网络调试:Surge
学习记录:Telegram channel
前端代码:Visual Studio Code
后端代码:IntelliJ IDEA Ultimate
代码编辑:CodeRunner
微信开发:微信开发工具
文本编辑:Sublime Text
笔记记录:Typora
文本对比:Beyond Compare
文档阅读:Word
表格处理:Excel
演示文稿:Keynote
正则测试:Expression
思维导图:iThoughtsX
代码片段:Dash、SnippetsLab
接口测试:Postman、Paw
请求抓包:Charles
终端工具:iTerm + oh-my-zsh
环境部署:Docker
图形绘制:OmniGraffle、Figma
远程桌面:Microsoft Remote Desktop
远程协助:向日葵远程协助
#软件 #工具 #列表
启动器:Alfred
浏览器:Google Chrome
数据库:Navicat Premium
虚拟机:Parallel Desktop
网络调试:Surge
学习记录:Telegram channel
前端代码:Visual Studio Code
后端代码:IntelliJ IDEA Ultimate
代码编辑:CodeRunner
微信开发:微信开发工具
文本编辑:Sublime Text
笔记记录:Typora
文本对比:Beyond Compare
文档阅读:Word
表格处理:Excel
演示文稿:Keynote
正则测试:Expression
思维导图:iThoughtsX
代码片段:Dash、SnippetsLab
接口测试:Postman、Paw
请求抓包:Charles
终端工具:iTerm + oh-my-zsh
环境部署:Docker
图形绘制:OmniGraffle、Figma
远程桌面:Microsoft Remote Desktop
远程协助:向日葵远程协助
#软件 #工具 #列表
👍9
James Notes
今年已经过去了 20%,大家年初有立下新年 flag 吗?已经完成了多少呢? 最近都在忙学业上的事情,差不多还有一年就该找实习了,所以这一年里需要把技能树都点亮起来,所以最近每天都在写代码学习,没什么时间更新频道了。 接下来更新频率会减少很多,每个月在少数派上可能会发一两篇文章,年底的时候应该要成为一个合格的 Java 工程师,flag 就先立在这里了,预祝大家也能一点点地努力,完成自己的年度小目标。 #生活
消失了一两个月,忙着学业没怎么发 channel,这周刚把课程设计的答辩通过了,小组全优通过。
年初在 channel 里立了个年度 flag,说今年的目标是成为 Java 初级工程师,现在这个目标已经逐渐实现了。
一个课程设计做完了,这学期还有两个。所以歇口气,我又该出发了。也祝大家在今年在今年最后的两个多月里,也完成自己定下的年度 flag。
年初在 channel 里立了个年度 flag,说今年的目标是成为 Java 初级工程师,现在这个目标已经逐渐实现了。
一个课程设计做完了,这学期还有两个。所以歇口气,我又该出发了。也祝大家在今年在今年最后的两个多月里,也完成自己定下的年度 flag。
👍6