motoorikashin / ef2 Goto Github PK
View Code? Open in Web Editor NEWIDM辅助下载工具,使用自定义ef2://协议,同时支持解析IDM导出文件(.ef2)
License: MIT License
IDM辅助下载工具,使用自定义ef2://协议,同时支持解析IDM导出文件(.ef2)
License: MIT License
看上去不是个文件,是重定向到某个文件的,会在解析的时候失败,但是用 IDM 直接导入是可以,能否修复不要提示能导入,谢谢
sample.ef2:
<
https://www.screenscraper.fr/api2/mediaGroup.php?devid=jelos&devpassword=jelos&softname=zzz&crc=&md5=&sha1=&groupid=2917&media=logo-monochrome&mediaformat=png
referer: https://www.screenscraper.fr/api2/
User-Agent: Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko
>
能不能批量下载
会导致IDM卡死关不掉,只能杀进程。
这应该是IDM的bug,正常导出导入没有重名文件问题不大,建议在加个说明要避免这种情况即可,不要有同名的文件
有些下载链接里面是有空格的,但是也是合法可以下载的,在解析后空格后的内容会被截掉
您好:试用了您发布的工具,非常方便,特别是filename这个扩展很有效的解决了一些下载的问题,但是使用过程中发现如果导出的ef2格式文件为utf-8编码的话,解析到idm中会出现乱码,能否考虑后续对应utf-8编码的文件?
exe文件天然旧具有不安全感,Windows用户天然就抵触运行来历不明的exe文件,而且本人学习C++实在浅陋,WindowsAPI更是学了点皮毛,虽有精进之心,却没那个精力和能力。
于是我就想既然IDM官方有浏览器扩展文件,我们也可以逆向着写一个,浏览器扩展而已,不像exe那样有病毒之虑。
其实之前就研究过IDM官方扩展与IDM的通信机制,总共三条信道:
作为第三方,首选当然是websocket,毕竟在js环境中有开箱即用的支持,唯一的问题是IDM后台web服务器有白名单机制,来自第三方的web请求直接pass(http POST也一样pass)!根本无法建立连接。实际上是通过referer,这在Manifest V3时代通过declarativeNetRequest
API似乎可以伪装一下解决?没试过🤣
次选方案Native Message,这在扩展环境是也是开箱即用的支持,不过这个也有白名单机制,不过这个白名单判定权在浏览器一方,而不是IDM本身,所以绕过方式非常简单,生成一份伪·白名单覆盖IDM安装目录下的json文件即可。
目前选择还是通过Native Message
,扩展负责与IDM建立连接,然后暴露接口到页面上下文中,实现页面js直接拉起IDM进行下载的目的,相比于原exe方案,有以下优势:
唯一的劣势是第一次安装需要覆盖白名单,相比写入注册表完全由exe代劳,白名单可得用户自己去放,毕竟每个人IDM安装路径不尽相同——未来或许可以使用批处理(bat文件)处理,双击一下也很快🤣
其实选择扩展,主要还是为了第3点,拉出IDM浮动条,这个浮动条相比直接下载数据强大太多:
目前虽然有了些进展,但只能通过Manifest V2扩展,因为拉出浮动条的很多参数只有MV2的API才获取的到。如何以MV3的API实现,还是得看IDM官方的扩展样品放出代码,毕竟那些参数究竟有何意义只有IDM官方才知道。
Google已于2022年6月禁止新MV2扩展上架,并将在2023年6月彻底禁止chorme运行MV2扩展,留给IDM的时间已经不多了,所以符合新标准扩展什么时候上架,快点端上来吧IDM🤣
当前进度并未推送上来,毕竟第3点不实现扩展相比于exe优势实在不大,这个feature可能要长期放着了。
第一个就是 -O 设置下载路径 中文会显示???乱码
第二个就是 -a 设置指定ua 会无效!神奇的是用 -u 设置ua ,下载地址也是-u ,虽然ua会被识别成到下载链接后面 但是IDM可以识别到指定ua 什么时候可以修复这些问题呢!!
安装后还是显示IDM目前不支持ef2数据传输协议。或许这是个拼写错误,请检查拼写后重试。IDM版本6.4.1version3
如题
Hi,
I have Visual Studio 2022 installed and followed your compilation instructions on the front page. However, I found that VSCode is not able to compile the project. I don't remember the exact error message, but it seems like some VSCode extension is required. So, I installed this one:
After that, when I press F5, I get this:
Have I missed anything?
该ef2文件似乎并不包含有效下载链接!?
请检查文件内容或者反馈到:
https://github.com/MotooriKashin/ef2/issues
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.