Novel::Robot download novel /bbs thread
小说/贴子下载器
Novel::Robot::Parser
Novel::Robot::Packer
get_novel.pl -u [小说目录页url] -t [目标文件类型] -C [是否写目录] -v [是否显示进度条] -i [章节] get_novel.pl -u "http://www.dddbbb.net/html/18451/index.html" -t txt get_novel.pl -u "http://www.jjwxc.net/onebook.php?novelid=2456" -t html get_novel.pl -u "http://www.jjwxc.net/onebook.php?novelid=2456" -t web -o some_dir get_novel.pl -u "http://www.jjwxc.net/onebook.php?novelid=2456" -t jekyll -T [标签] -c [类别] -R [说明]
get_novel_split.pl -u [小说目录页url] -t [目标类型] -n [分段章节数] -C [是否写目录] -v [是否显示进度条] get_novel_split.pl -u "http://www.jjwxc.net/onebook.php?novelid=2456" -n 10 -t jekyll
get_novel.pl -w [作者] -u [书名] -f [txt文件或目录] -r [章节标题匹配的正则式] -t [目标文件类型] get_novel.pl -w 顾漫 -u 何以笙箫默 -f hy1.txt -t html get_novel.pl -w 顾漫 -u 何以笙箫默 -f hy1.txt,hy2.txt,dir1 -r "第[ \\t\\d]+章" -t html
get_novel.pl -u [小说目录页url] -c [类别] -T [标签] -W [wordpress页面地址] -U [用户名] -P [密码] get_novel.pl -u "http://www.dddbbb.net/html/18451/index.html" -c 言情 -W http://xxx.xxx.com -U xxx -P xxx get_novel.pl -u "http://www.jjwxc.net/onebook.php?novelid=2456" -c 原创 -W http://xxx.xxx.com -U xxx -P xxx get_novel.pl -w [作者名] -u [用户名] -f [源文件] -c [类别] -T [标签] -W [wordpress页面地址] -U [用户名] -P [密码] get_novel.pl -w 顾漫 -u 何以笙箫默 -f hy.txt -c 言情 -W http://xxx.xxx.com -U xxx -P xxx get_novel.pl -w 施定柔 -u 迷行记 -f mx1.txt,mx2.txt -c 言情 -W http://xxx.xxx.com -U xxx -P xxx
get_novel.pl -b [board_url/writer_url] -m [select_menu_or_not] -t [packer_type] get_novel.pl -s [site] -q [query_type] -k [query_keyword] -m [select_menu_or_not] -t [packer_type] get_novel.pl -b "http://www.jjwxc.net/oneauthor.php?authorid=3243" -m 1 -t html get_novel.pl -s jjwxc -q 作品 -k 何以笙箫默 -m 1 -t html
-A : only_poster, 贴子只看楼主 -C : with_toc, 小说保存时是否生成目录(默认是) -I : {min/max}_{query/board}_page, 结果列表只取 x-y 页 -M : max_{query_item/board_item}_num, 结果列表最多取x项 -i : {min/max}_{tiezi_page/chapter_num}, 只取 x-y 章 -m : max_tiezi_floor_num, 结果列表最多取x项 -N : min_floor_word_num, 贴子每层最小字数 -P : password, wordpress 密码 -R : remark, 一些补充说明 -v : verbose, 显示进度条(默认显示) -T : tag,标签,例如 顾漫,小白 -U : wordpress 用户 -S : ...wordpress packer 站点地址 -c : category,小说类别,例如 原创 -f : ...txt file / txt file dir, 指定文本文件来源(可以是单个目录或文件) -k : query keyword, 查询的关键字 -E : select menu, 是否输出小说选择菜单 -n : split chapter num, 单个文件最大章节数(一本小说可以分多个文件,每个文件最多n章) -o : output filename, 保存的小说文件名 -p : max_process_num, 进程个数 -q : query type, 查询的类型 -r : chapter regex, 指定分割章节的正则表达式(例如:"第[ \\t\\d]+章") -s : site, 指定查询的站点 -t : save type, 小说保存类型,例如txt/html -u : ...book url,小说目录页 / book name,书名 -w : writer url 作者专栏URL / writer name 作者名 -B : 版块序号,例如hjj的xq版块号为3
conv_novel.pl -f [源文件] -t [目标文件类型(小写)] -w [作者] -b [书名]
将下载的 html格式 的小说转换成 其他格式的电子书,例如epub、mobi等等 需要预先安装calibre的ebook-convert,源文件名称格式默认为 [作者-书名] conv_novel.pl -f 施定柔-迷侠记.html -t mobi conv_novel.pl -f 施定柔-迷侠记.html -t epub
简单下载电子书 get_ebook.pl [小说目录页url] [目标文件类型/目标文件名] get_ebook.pl "http://www.dddbbb.net/html/18451/index.html" mobi get_ebook.pl "http://www.dddbbb.net/html/18451/index.html" abc.mobi
send_novel.pl -f [源文件] -s [源邮箱] -d [目标邮箱] -h [远程smtp服务器] -u [邮箱帐号] -p [邮箱密码]
需要预先安装L<sendEmail|http://caspian.dotconf.net/menu/Software/SendEmail/> 本机已安装smtp服务 send_novel.pl -f 施定柔-迷侠记.mobi -s xxx@src.com -t yyy@kindle.com 使用远程smtp服务 send_novel.pl -f 施定柔-迷侠记.mobi -s xxx@src.com -t yyy@kindle.com -h smtp.src.com -u xxx -p somepwd
设置解析引擎,目标文件类型
my $xs = Novel::Robot->new( site => 'jjwxc', type => 'html', );
$xs->set_parser('jjwxc');
$xs->set_packer('html');
$xs->set_parser('jjwxc'); my $index_url = 'http://www.jjwxc.net/onebook.php?novelid=2456'; $xs->get_item($index_url); $xs->set_parser('txt'); $xs->get_item([ '/somepath/somefile.txt' ] writer => '顾漫', book => '何以笙箫默', );
$xs->set_parser('jjwxc'); my $writer_url = 'http://www.jjwxc.net/oneauthor.php?authorid=3243'; my ($writer_name, $books_ref) = $xs->{parser}->get_board_ref($writer_url, %opt); $xs->get_item($_, %opt) for @$books_ref; $xs->set_parser('hjj'); my $board_url = "http://bbs.jjwxc.net/showmsg.php?board=153"; my ($info, $tiezis_ref) = $xs->{parser}->get_board_ref($board_url, %opt); $xs->get_item($_, %opt) for @$tiezis_ref;
my $query_type = '作者'; my $query_keyword='顾漫'; my ($info, $items_ref) = $xs->{parser}->get_query_ref($query_keyword, query_type => $query_type, %opt); $xs->get_item($_, %opt) for @$items_ref;
my $select_books_ref = $xs->select_item($banner_info, $books_ref);
To install Novel::Robot, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Novel::Robot
CPAN shell
perl -MCPAN -e shell install Novel::Robot
For more information on module installation, please visit the detailed CPAN module installation guide.