hardseed 种子下载工具开源项目

我要开发同款
匿名用户2014年07月25日
89阅读

技术信息

开源地址
https://github.com/yangyangwithgnu/hardseed
授权协议
GPLv2

作品详情

硬盘女神,你懂嘀!hardseed是个种子下载工具,它从浓(ai)情(cheg)蜜(she)意(qu)和爱(cao)意(liu)无(she)限(qu)的地方获取女神种子、图片。

【翻墙】

你知道,这一切的一切都在墙外,所以你得具备翻墙环境,hardseed才能正常帮你拉女神。hardseed支持goaget、shadowsocks、SSH、VPN(PPTP和opeVPN)等各类代理模式,甚至你可以并行使用多种代理以极速下载。从普及度、稳定性、高效性来看,goaget最优。“我一技术小白,平时工作压力本来就大,就想看看女神轻松下,你还让我折腾代理!没人性!”,嘚,亲,咱是做服务的。我帮你配置了一份开箱即用的goaget,位于hardseed/proxy/goaget_3.1.19/local/,liux用户,命令行中运行

$ pytho proxy.py

widows亲,双击运行goaget.exe(管理员权限)。

【下载】『widows』

亲,往右上看,找到“dowloadZIP”,点击下载。

『liux』$ git cloe https://github.com/yagyagwithgu/hardseed.git【源码安装】『widows』

这基本没widows用户什么事儿,除非你有cygwi,否则你没法编译源码,没事,帮你弄好了,我的定位是牙医界的服务人员,服务很重要,二进制执行程序位于hardseed\bi\widows\hardseed.exe。

『liux』

0)唯一依赖libcurl,请自行安装;1)代码采用C++11编写,gcc版本不低于4.7.1。2)命令行下运行:

$ cd hardseed/build/$ cmake .$ make && make istall【使用】

亲,听好了,运行hardseed前务必确保代理程序已正常运行,否则,别说女神,蚊子都碰不到。

『widows』

先进入hardseed\bi\widows\,找到并选中hardseed.exe,右键设置以管理员权限运行该程序,接着键入alt-d将光标定位到文件管理器的地址栏中,键入CMD启动命令行窗口,再在CMD中键入

X:\hardseed\bi\widows> hardseed.exe

这时,hardseed开始玩命儿为你下载女神图片和种子,经过2分钟8秒,找到类似C:\[aicheg_asia_mosaicked][1~128]@014822\的目录,女神们那儿等你!

『liux』

同widows下运行一样,全用默认命令行参数运行

$ hardseed

执行完成后,你会看到~/[aicheg_asia_mosaicked][1~128]@014822/,你要的都在那儿。或者,玩点高级的

$ hardseed --saveas-path ~/dowloads --topics-rage 256 --av-class aicheg_west

其中,--saveas-path指定存放路径为~/dowloads/;--topics-rage指定解析的帖子范围从第1张帖子到第256张帖子;--av-class指定女神类型为欧美。

【FQA】

Q0:osX下源码编译报错:

...Likig CXX executable hardseedUdefied symbols for architecture x86_64:"_icov", refereced from:Webpage::covertCharset(std::__1::basic_strig<char, std::__1::char_traits<char>, std::__1::allocator<char> > cost&, std::__1::basic_strig<char, std::__1::char_traits<char>, std::__1::allocator<char> > cost&) i Webpage.o...

A0:请把CMakeList.txt中的

SET(CMAKE_EXE_LINKER_FLAGS "-lcurl -lpthread")

替换成

SET(CMAKE_EXE_LINKER_FLAGS "-lcurl -lpthread -licov")

Q1:为何widows版的可执行文件目录hardseed\bi\widows\下有一堆cyg*.dll文件?A1:hardseed是用C++编写的遵循SUS(单一uix规范)的原生liux程序,理论上,在任何uix-like(liux、BSD、osX)系统上均可正常运行,唯独不支持widows,为让hardseed具备跨平台能力,须借由某种工具(或环境)将hardseed转换成widows下的执行程序。cygwi就是这种环境,我把hardseed源码纳入cygwi环境中重新编译,即可生成widows下的可执行程序hardseed.exe,在这个过程中,cygwi会加入些自己的代码和中转库到hardseed.exe中,cyg*.dll就是各类中转库。

Q2:为何运行widows版的执行程序总有如下警告

Preferred POSIX equivalet is: /cygdrive/c/xxxx, CYGWIN eviromet variable optio "odosfilewarig" turs off this warig. Cosult the user's guide for more details about POSIX paths ...

这影响正常运行么?A2:liux与widows有很多基础设施的差异,路径表示方式就算其一,如,前者是/this/is/liux/path/,后者C:\this\is\widows\path\,A1中提过hardseed是liux下的原生程序,代码中全采用的liux路径规则,运行hardseed.exe时,cygwi自动进行路径规则转换,所以出现本问题中的警告信息以告知用户路径可能有变化。这完全不影响hardseed.exe正常运行。如果厌恶这些提示,可以在环境变量中增加CYGWIN=odosfilewarig(wi7用户:computer-properties-advacedsystemsettigs-advaced-evirometvariables-ew,variableame填入CYGWIN,variablevalue中填入odosfilewarig,保存即可)。

Q3:运行hardseed后啥都没下载呢?还提示Thereisotopicwhichyoulike?A3:有几种可能:a)未成功翻墙。请自行参阅你的翻墙工具帮助文档,修正即可。widows用户注意检查是否以管理员权限运行翻墙工具;b)网页翻墙已成功但仍无法下载。请检查你的代理工具是否成功接收hardseed的代理请求(如,goaget窗口中可查看),widows用户注意检查是否以管理员权限运行hardseed.exe;c)hardseed翻墙已成功但仍无法下载。你指定了--likexxxx命令行选项,hardseed将查找标题中是否含有关键字xxxx,若没有则忽略相关帖子。更换其他关键字。

Q4:我已经在墙外,为何仍下载失败?A4:hardseed默认采用goaget作为代理工具,即,默认本地代理中转地址为https://127.0.0.1:8087。如果你已在墙外无须代理即可访问caoliu和aicheg论坛,那么需要告知hardseed不再走本地代理中转而应直接访问,即:

--proxy ""

Q5:如何加快下载速度?A5:最直接会想到多线程下载,一条线程负责下载一个页面,逻辑上,线程数越多、下载速度越快,实际上,存在代理服务器和被访服务器两方面的限制:

代理服务器方面的限制,代理服务器为不同用户提供代理服务,为避免相互影响,通常它会限制单个用户的流量和请求频率,所以,hardseed在指定代理服务器上的线程数一定是有个上限;

被访服务器方面到限制,你访问的论坛不会低能到不控制请求频率,举个例,正常情况你4秒钟可以打开4张caoliu论坛的帖子,一旦caoliu服务器发现你1秒钟打开了32张帖子那一定将此视为机器人行为,从而拒绝响应。

正由于存在代理服务器和被访服务器两方面的限制,线程数不能无限大,从我多次测试的经验来看,单个代理服务器访问被访服务器的并行线程数设定为8条最为稳定,否则容易引起代理服务器和被访服务器停服。同个时刻有大量用户在访问caoliu论坛,肯定远超1秒钟打开了32张帖子的频率,为何caoliu没对所有用户拒绝请求?显然,这些请求来自不同IP的电脑终端,按这个思路,如果hardseed若能通过多个不同IP访问caoliu,那完全可以绕开caoliu对单个IP请求频率过快的限制。由于我们采用代理访问,发起访问请求的IP就是代理服务器的IP,显然,只要hardseed支持同时使用多个代理服务器,那么一切问题就简单了。所以,我赋予了hardseed多路代理的能力。hardseed支持4种代理模式:

goaget(STRONGLYrecommeded),--proxyhttps://127.0.0.1:8087

shadowsocks,--proxysocks5://127.0.0.1:1080,orsocks5h://127.0.0.1:1080

SSH,--proxysocks4://127.0.0.1:7070

VPN(PPTPadopeVPN),--proxy""

其中,除VPN外(这是种全局代理模式),其他三种代理模式可混用,也就是说,你可以同时指定goaget、shadowsocks、SSH等三种代理模式

--proxy https://127.0.0.1:8087 socks5://127.0.0.1:1080 socks4://127.0.0.1:7070

这样,hardseed就能用8*3条线程并行下载。另外,goaget都是通过GAE集群发起到网络请求,所以不存在同个机器上配置多个goaget的做法;SSH(获取免费帐号https://www.fastssh.com/)和shadowsocks(获取免费帐号https://shadowsocks.et/get)代理,你可以获取多个不同的代理服务器(不同的SSH或者shadowsocks代理的本地端口必须自行设置成不同的),因此可以实现多个不同IP发起网络请求。换言之,你可以有1*goaget+*SSH+m*shadowsocks个代理IP,每个IP本来就有8条线程,那么共计有(1++m)*8条线程并行下载,速度自然上去了。我个人偏爱shadowsocks,以此举例来说:先在https://shadowsocks.et/get获取了4个shadowsocks帐号,本地端口分别配置成1080、1081、1082、1083,运行此4个shadowsocks代理程序;同时,运行goaget代理程序;然后,在hardseed的命令行参数设定为

--proxy https://127.0.0.1:8087 socks5://127.0.0.1:1080 socks5://127.0.0.1:1081 socks5://127.0.0.1:1082 socks5://127.0.0.1:1083

这时,如果你的--cocurret-tasks设定为8(默认值),那么,hardseed将启用(4+1)*8条线程并行下载。那速度飞快、飞快、快...(有些shadowsocks代理服务器禁止下载,若有异常,将其从--proxy代理列表中剔除之。若求稳定,只用goaget)

Q6:如何搜索喜欢的视频?A6:--like选项可以指定多个关键字(空格隔开)参数,帖子标题中出现相关关键字之一便纳入下载范围,否则不下载。通常来说,帖子标题中文字有简体、繁体、日文等三种可能,所以你应该都指定,比如,喜欢“护士”和“情侣”系列,先简译繁https://www.aies.c/,简译日https://fayi.baidu.com/#zh/jp/,再指定命令行参数即可

--like 护士 護士 看護婦 情侣 情侶 カップル

Q7:如何下载高清?A7:hardseed并不直接支持高清类型下载,只能间接实现,由--like指定“高清”相关关键字进行下载,比如:

--like 1080P 720P HD 高清 ハイビジョン忠告

你,党之栋梁、国之人才,千万注意身体!

https://v.youku.com/v_show/id_XNzQxOTk0NTE2.html

功能介绍

硬盘女神,你懂嘀!hardseed 是个种子下载工具,它从浓(ai)情(cheng)蜜(she)意(qu)和爱(cao)意(liu)无(she)限(qu)的地方获取女神种子、图片。 【翻墙】 你...

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论