Trước giờ mình đọc truyện cũng lâu rồi, nguồn text raw chủ yếu tìm từ những trang truyện free cho phép download Tuy nhiên gần đây có một vài truyện được đăng trên những trang không thể download được, vậy là mình viết 1 tool download text raw từ các trang này, sẵn tiện share lên đây cho mọi người luôn.
Trên lý thuyết thì tool này có thể download text từ tất cả các trang (có lẽ chỉ trừ trang http://www.hbooker.com thôi-đã fix ở bản 1.1). Nhưng đó cũng chỉ là lý thuyết, vì thực tế thì mình cũng chưa test hết tất cả các trang truyện khác nên chưa biết kết quả thế nào =))
Link download
CLIP HƯỚNG DẪN TRÊN YOUTUBE: https://youtu.be/RiTL067UWcQ
BẢN UPDATE 1.1 https://drive.google.com/file/d/1c9n...0Wq0Epnp9EzcNy
CLIP HƯỚNG DẪN SỬ DỤNG BẢN 1.1 LẤY TEXT VỚI HBOOKER: https://youtu.be/3YFgBr2YhRU
Giao diện của tool sẽ như thế này
Giao diện
Trước hết mình xin giải thích qua 1 chút về phần giao diện
1/ Trang chủ: dùng để các bạn nhập đường dẫn chính (trong trường hợp href của thẻ a hiện link không đầy đủ)
2/ Trang web: Là danh sách những trang đã được thiết lập sẵn trong file xml, sau này các bạn có thể khai báo thêm
3/ Tuỳ chỉnh: Có 3 mục
+ Tuỳ chọn xuống hàng/liên tục: Thông thường các trang web sẽ chia chương theo từng link, tuy nhiên có 1 vài trang như sto.cc chẳng hạn. Trang này không chia theo chương mà chia theo độ dài, nên đôi khi sẽ có 1 câu mà nó bị cắt ra làm 2, nằm ở 2 link khác nhau (các bạn có thể vào sto.cc mở 1 truyện ra để xem thử). Tuỳ chọn xuống hàng là text của mỗi link sẽ được viết cách nhau 2 hàng, còn tuỳ chọn liên tục là text của các link sẽ được viết dính vào nhau luôn. Tuỳ chọn liên tục dành cho những trang web tương tự như sto.cc
+ Tuỳ chọn lấy html/lấy theo link: Tức là trong mục "Danh sách chương" các bạn copy vào dữ liệu loại gì (copy vào nguyên 1 source html - cái này là đa số các trang web có phần mục lục) hoặc copy vào danh sách các đường link (trường hợp này lại là của trang sto.cc vì nó không có trang web chứa mục lục nên không copy html của mục lục vào được)
+ Tuỳ chọn ghi tiêu đề/không tiêu đề: Tuỳ chọn này chỉ xuất hiện khi bạn chọn "lấy theo link" vì khi đó link của bạn không chứa tiêu đề, tuỳ chọn này dùng cho mỗi link là 1 chương, và tên của chương không nằm chung trong phần chứa text nên chọn để tool thêm vào giúp dễ phân biệt giữa các chương
4/ Danh sách chương: Các bạn có thể copy 1 đoạn HTML hoặc 1 đoạn link text vào
Ví dụ HTML
Ví dụ link<ul class="cf">
<li data-rid="2"><a href="//read.qidian.com/chapter/4mpiCJrkv6s1/YcgDWVOIx10ex0RJOkJclQ2" target="_blank" data-eid="qd_G55" data-cid="//read.qidian.com/chapter/4mpiCJrkv6s1/YcgDWVOIx10ex0RJOkJclQ2" title="首发时间:2013-06-18 18:12:52 章节字数:3334">第二章:最初的日子</a>
</li>
<li data-rid="3"><a href="//read.qidian.com/chapter/4mpiCJrkv6s1/OQR88_uDBNQex0RJOkJclQ2" target="_blank" data-eid="qd_G55" data-cid="//read.qidian.com/chapter/4mpiCJrkv6s1/OQR88_uDBNQex0RJOkJclQ2" title="首发时间:2013-06-18 18:13:47 章节字数:3711">第三章:开始修行</a>
</li>
</ul>
5/ Tên truyện: Nhập tên truyện (không cần nhập đuôi txt)
6/ Đường dẫn: Chọn đường dẫn lưu
7/ Path lấy truyện: Đây là phần RẤT QUAN TRỌNG. Trong phần này bạn nhập id của div chứa truyện (Các đoạn text thường được chứa trong thẻ div, và đa số các thẻ div này đề có quy định id) hoặc là tên class (Một vài trang web không đặt id mà đặt tên class, trong trường hợp này bạn phải khai báo thêm là class thứ tự số mấy - vì class có thể có nhiều class có tên trùng nhau. Thông thường thì class chứa truyện sẽ có số thứ tự là số 0 (đầu tiên) tuy nhiên vẫn có thể có trường hợp khác. Các bạn xem source html của nó cho kỹ nhé)
8/ Xoá tag: Xoá các tag dư. Trong div chứa text của truyện có thể lồng vào 1 vài tag khó chịu để quảng các hoặc chứa link như div, hr, span, a, script,....Các bạn khai báo tên tag , cách nhau bằng dấu phẩy, không có khoảng trắng. Nếu không có tag nào cần xoá thì để trống. Lưu ý là khi xoá tag nó sẽ xoá nguyên 1 tag và nột dung trong đó luôn. Cho nên có nhiều trang (như qidian chẳng hạn) để text vào thẻ <p></p> thì các bạn đừng xoá thẻ p nhé, nó sẽ hoá hết text bên trong luôn. Muốn xoá p hãy dùng phần "Thay text"
9/ Thay text: Thay những đoạn text hay những đoạn watermark của trang web trong phần text. Bên trái là chữ cần thay, bên phải là chữ sẽ thay, nếu muốn bỏ luôn chữ bên trái thì chữ bên phải chỉ cần để trống, nó sẽ thay bằng rỗng, bạn có thể chọn thay bằng Regex hoặc thay như Text thường (Dùng regex theo format của c# nhé)
10/ Chạy bình thường: Nút này dùng để chạy chương trình bình thường
11/ Chạy bằng IE: Các bạn nếu lấy truyện free thôi không nên chạy bằng cái này. Các này dành cho những bạn có tài khoản vip. Có những trang truyện (như Tấn Giang) cho dù bạn đã dùng vip mua truyện rồi nhưng nó vẫn không cho download về mà chỉ cho xem thì bạn dùng nút này. Đầu tiên mở Internet Explorer lên và đăng nhập sẵn vào trang cần down. Tool sẽ lấy session của IE để chạy. Thời gian chạy sẽ lâu hơn bình thường 1 chút. Các bạn lưu ý là trên Windows 10 sẽ có 2 browser mặc định là Edge và IE, cái biểu tượng chữ E nằm ở thanh Taskbar là của Edge đấy. Tool của mình không chạy với Edge nên các bạn lưu ý phải mở IE và đăng nhập thì mới lấy truyện được. Cách mở IE trong Windows 10: Cách mở IE trong Windows 10
12/ Reset: reset các giá trị về ban đầu
13: Kết quả: hiện kết quả hoặc lỗi
TTV Translate - Ứng dụng convert truyện trên mobile
Sau đây mình sẽ hướng dẫn cách xài
Ví dụ như trang truyện này http://www.shumil.com/douzhankuangchao/
Trong ví dụ này mình sẽ dùng chrome nhé, các bạn dùng firefox hay opera, cốc cốc gì cũng được, quan trọng là lấy được source html của nó thôi
Đầu tiên các bạn mở mục lục của trang truyện lên, bấm chuột phải vào 1 link, chọn "Inspect"
Inspect
Sau đó các bạn chọn thẻ bao hết tất cả các chương truyện (Thường các trang web sẽ chứa link trong thẻ <li> nên thẻ bao hết của nó sẽ là <ul>), nhấn chuột phải, chọn Copy -> Copy outerHTML
Copy outerHTML
Sau đó các bạn dán vào mục "Danh sách chương" của tool. Sau khi dán xong, các bạn để ý thẻ a phần href (Đây là nơi chứa link của từng chương), các bạn sẽ thấy nó chỉ ghi 1 file html thôi (vd: "7126716.html") Đây là đường dẫn tương đối, nếu để nguyên như thế mà chạy thì sẽ không được nên các bạn thử click vào 1 chương thì sẽ thấy link đầy đủ của nó là "http://www.shumil.com/douzhankuangchao/7126716.html". Lúc này bạn phải nhập cụm "http://www.shumil.com/douzhankuangchao/" vào mục "Trang chủ" thì tool mới chạy mà không bị lỗi. (Có 1 vài trang như qidian nó để href là "//read.qidian.com/chapter/4mpiCJrkv6s1/bLYzX2fDWLEex0RJOkJclQ2" thì các bạn vẫn phải nhập thêm dòng chữ "http:" vào mục "Trang chủ". Nói chung đường link để tool chạy ổn định phải là 1 đường link hợp lệ ví dụ như "http://www.abc.com/chuong1" chẳng hạn)
Sau đó các bạn nhập tên truyện và nơi lưu
Sau khi nhập xong, các bạn mở thử 1 chương, bấm f12 (với chrome) để mở source của page nó ra và tìm xem thẻ div hoặc thẻ chứ text của nó có id hoặc class là gì. Đối với trang này khi mở lên các bạn sẽ thấy nó được chứa trong 1 thẻ p, hoàn toàn không có tên id hoặc class. Đưng sợ ! Các bạn hãy nhìn lên phía lên 1 chút sẽ thấy thẻ div chứa cả nó có id, tuy nhiên thẻ div này ngoài thẻ p ra thì còn chứa rất nhiều thứ linh tinh khác nữa, nên các bạn phải khai báxo1aai các thẻ dư trong phần "Xoá tag" (Đừng khai báo thẻ p nhé, nếu không nó sẽ xoá luôn text đấy) và thay thế 1 vài text trong phần "Thay text"
Tìm thẻ div chứa text
Giao diện tool
Sau đó các bạn nhấn "Chạy bình thường", lần đầu tiên sẽ có 1 hộp thoại của PhantomJS hỏi bạn về quyền truy cập mạng, cứ allow access cho nó (mấy lần sau không cần), lúc chạy có thể đôi khi chương trình sẽ để trạng thái là "No Responding" thì cứ kệ nó, không sao đâu, nếu có lỗi nó sẽ hiện popup lên
Sau khi chạy xong, nếu thành công hay có lỗi nó cũng sẽ hiện popup thông báo, các bạn vào nơi lưu file mở file txt lên và so sánh thử với text trên web xem có đủ không ?
Kết quả
Đấy là trang ví dụ và cách chạy cơ bản. Đối với chạy bằng IE cho những bạn muốn lấy truyện vip thì thao tác cũng tương tự, trừ việc trước khi chạy bạn phải đăng nhập trước bằng tài khoản vip trên IE
TTV Translate - Ứng dụng convert truyện trên mobile
File TextHost.xml quy định cách lấy truyện của từng trang, được viết sẵn để sau này bạn không phải tốn thời gian ngồi gõ lại id truyện cần lấy, tag nào cần xoá, chữ nào cần xoá,....Bạn cũng có thể tự làm format sẵn 1 trang cho mình và chia sẻ với mọi người. Hiện nay trong file này chỉ có 1 trang là qidian, sau này các bạn có thể tự bổ sung thêm, cấu trúc để format cho 1 trang gồm có
Trong đó website name="www.qidian.com" quy định tên trang hiển thị ở phần select trong mục "Trang web". Ví dụ trong trường hợp này thì phần select ở mục "Trang web" sẽ có 2 tuỳ chọn là "None" và "www.qidian.com"<website name="www.qidian.com">
<host>http:</host>
<node>
<type>1</type>
<name>j_readContent</name>
<order>0</order>
</node>
<tag></tag>
<replace>
<section>
<type>0</type>
<oldchar><p></oldchar>
<newchar></newchar>
</section>
<section>
<type>0</type>
<oldchar></p></oldchar>
<newchar></newchar>
</section>
</replace>
</website>
<host> quy định cái sẽ nhập vào mục "Trang chủ". Nếu không nhập gì thì để trống
Phần này quy định tên id hoặc class chứa text, type 0 là id, type 1 là class (vì trang qidian thẻ div chứa text chỉ có class chứ không có id nên mình để là 1)<node>
<type>1</type>
<name>j_readContent</name>
<order>0</order>
</node>
<tag> chứa danh sách các tag cần xoá, viết liền, cách nhau bằng dấu phẩy, không có khoảng trắng
<replace> chứa các chữ cần thay thế, nó có các cụm section, mỗi cụm section là 1 text hoặc regex cần thay. Các bạn lưu ý là vì mình chỉ để đủ chỗ cho 10 cái text hoặc regex thay thế, nên nếu bạn nhập vào hơn 10 section thì chỉ có 10 cái đầu là được lấy thôi.
type 0 là text, type 1 là regex<type>0</type>
<oldchar></p></oldchar>
<newchar></newchar>
oldchar là chuỗi cũ, newchar là chuỗi mới, nếu muốn xoá chuỗi cũ đi thì phần newchar để trống
Khi chuỗi các bạn muốn xoá có chứ 1 trong 5 ký tự đặc biệt (<,>,",',&) này thì phải dùng kiểu viết khác để xml nhận ra
Tuyệt đối không viết
Mà phải viết là<oldchar></p></oldchar>
Chuỗi ký tự thay thế cho 5 ký tự đặc biệt này là<oldchar></p></oldchar>
Trong ví dụ ở trên mình đã làm trang shumil.com nên sẵn tiện đây mình cũng tạo luôn 1 format cho trang này< (<), & (&), > (>), " ("), and ' (')
Mình không nhập text cho phần <host> (tức là "Trang chủ" vì phần này thay đổi tuỳ theo truyện)<website name="www.shumil.com">
<host></host>
<node>
<type>0</type>
<name>content</name>
<order></order>
</node>
<tag>script,div,a,center,ins,b</tag>
<replace>
<section>
<type>0</type>
<oldchar><p style="font-size: 26px; line-height: 39px; font-family: 宋体;"><b>书迷楼最快更新, 无弹窗阅读请<a href="javascript:void(0)" onclick="addFav()" title="" rel="sidebar">收藏书迷楼(www.shu mil.com)</a>。</b></p></oldchar>
<newchar></newchar>
</section>
<section>
<type>0</type>
<oldchar><p style="font-size: 26px; line-height: 39px; font-family: 宋体;"></oldchar>
<newchar></newchar>
</section>
<section>
<type>0</type>
<oldchar></p></oldchar>
<newchar></newchar>
</section>
</replace>
</website>
Các bạn chỉ cần copy bỏ vào file xml bên dưới phần website của trang qidian và nằm trong thẻ root. Sau đó tắt ứng dụng đi và mở lại sẽ thấy
Khi chọn shumil.com<?xml version="1.0" encoding="utf-8" ?>
<root>
<website name="www.qidian.com">
<host>http:</host>
<node>
<type>1</type>
<name>j_readContent</name>
<order>0</order>
</node>
<tag></tag>
<replace>
<section>
<type>0</type>
<oldchar><p></oldchar>
<newchar></newchar>
</section>
<section>
<type>0</type>
<oldchar></p></oldchar>
<newchar></newchar>
</section>
</replace>
</website>
<website name="www.shumil.com">
<host></host>
<node>
<type>0</type>
<name>content</name>
<order></order>
</node>
<tag>script,div,a,center,ins,b</tag>
<replace>
<section>
<type>0</type>
<oldchar><p style="font-size: 26px; line-height: 39px; font-family: 宋体;"><b>书迷楼最快更新, 无弹窗阅读请<a href="javascript:void(0)" onclick="addFav()" title="" rel="sidebar">收藏书迷楼(www.shu mil.com)</a>。</b></p></oldchar>
<newchar></newchar>
</section>
<section>
<type>0</type>
<oldchar><p style="font-size: 26px; line-height: 39px; font-family: 宋体;"></oldchar>
<newchar></newchar>
</section>
<section>
<type>0</type>
<oldchar></p></oldchar>
<newchar></newchar>
</section>
</replace>
</website>
</root>
Sau này các bạn nếu lấy text từ trang truyện nào mà khai báo những mục như "Path lấy truyện", "Xoá tag", "Thay text" thấy dài quá thì nhớ tạo thành 1 file xml rồi share lên cho mọi người với nhé
TTV Translate - Ứng dụng convert truyện trên mobile
Khi sử dụng phần "Lấy theo link" các bạn nhớ là không nên để dòng trắng giữa các hàng, không có hàng trắng nhé (Không phải là nếu làm thế thì tool không chạy được, nhưng mình cũng khuyến cáo không nên làm vậy để lúc chạy không bị lỗi)
Đây là ví dụ khi dùng với trang sto.cc
Sto.cc
TTV Translate - Ứng dụng convert truyện trên mobile
Trên đây là phần hướng dẫn sử dụng của mình, chúc các bạn có thể get truyện thành công từ những trang truyện tiếng Trung khác. Chào thân ái và quyết thắng