Project

General

Profile

Wiki » History » Version 1

Komorek, Kamil, 27.11.2016 09:53

1 1 Komorek, Kamil
h1. dex_chan - 4chan and any chan board mass-image downloader
2
3
That app allows you to download all images from any 4chan-similar board.
4
It's universal downloader that uses included boards.xml file, which allow you to specify any internet-public site and any chan. 
5
Boards.xml may be edited by You if you need any other chan to support. Deleting file will download default from my server.
6
Supports autoupdate for boards file.
7
8
!http://i.imgur.com/R4ROy9l.jpg!
9
10
*Features:*
11
12
* Mass image-videos-files download from all topics
13
* Multithreaded downloader
14
* "Inteligent" queue
15
16
Language: Polish (but it's easy in use :) )
17
18
Have fun!
19
20
h2. Boards changelog
21
22
* 201505092200 - fixed 4chan patterns, 
23
* 201211302330 - first initial version, + 7chan support
24
25
*How to update?* Just delete boards.xml and restart application.
26
27
h2. Requirements
28
29
 * It's written in C# .NET 3.5, may require latest M$ Windows updates and redistributed packages
30
 * It requires internet connection
31
32
h2. Download
33
34
Current Version: 1.1
35
Latest: http://dl.dexterxx.pl/pr/dex_chan/dex_chan.exe
36
37
h2. More to read:
38
39
* http://blog.dexterxx.pl/2012/12/01/hello-grudzien-dex_chan-v1-1/
40
* http://blog.dexterxx.pl/2015/02/16/wypiem-platforme-projektow-dexterxxprojects-bo-nie-mialem-cierpliwosci-do-drupala/
41
42
h2. Boards.xml quick tutorial
43
44
Open @boards.xml@, best is learn by example, so look at 4chan definition:
45
46
<pre><code class="xml">
47
<site>
48
	<name>4chan.org</name>
49
	<!-- Below is first-page board link look, eg.:
50
		http://boards.4chan.org/g/1
51
		http://boards.4chan.org/tv/1
52
		etc.,
53
		(first page may sometimes not work, but if you try /g/3 (as 3rd page) so you know that is good)
54
			@BOARD@ and @PAGE are required to specify. -->
55
	<board_url>http://boards.4chan.org/@BOARD@/@PAGE@</board_url>
56
	<!-- Below is link to thread, eg.:
57
		http://boards.4chan.org/g/thread/57704107
58
		looks similar? g - @BOARD@ and 57704107 is @TID@ - thread id
59
	... -->
60
	<board_url_topic>http://boards.4chan.org/@BOARD@/thread/@TID@</board_url_topic>
61
	<!-- Below is url to target image (not thumbinal), eg.:
62
		http://i.4cdn.org/g/1480199776841.jpg
63
		so g - @BOARD@, and 14801... is @FILE@ - easy?
64
	-->
65
	<board_url_img>http://i.4cdn.org/@BOARD@/@FILE@</board_url_img>
66
	<!-- Now more complex... below is regexp which allows app to recognize what is what in board
67
		MATCHED must be in first () - that may be little difficult, sorry for that
68
	-->
69
	<patterns>
70
		<!-- Link to topic (often it's "Reply" pattern) - it resolves to @TID@ -->
71
		<reply><![CDATA[<a href=\"thread/([0-9]{2,15})/?[a-zA-Z0-9-]+?\".?(class=\"replylink\")?>Reply</a>]]></reply>
72
		<!-- Resolves to @FILE@ - only filename - 1480199776841.jpg from our above example
73
			IMPORTANT: first match must resolves to filename and second match to extension
74
			so: 1480199776841.jpg -> 1: (1480199776841) 2: (jpg)
75
			dunno why i did that in past ;)
76
		-->
77
		<image><![CDATA[<a class=\"fileThumb\" href=\"//i\.4cdn\.org/[a-zA-Z0-9]+/([0-9]+)\.([a-zA-Z0-9]{2,5})\" target=\"_blank\">]]></image>
78
	</patterns>
79
	<!-- Below is boards on that chan
80
		Values are injected into @BOARD@ variable.
81
		-->
82
	<boards_list>
83
		<b>a</b>
84
		<b>b</b>
85
		<b>c</b>
86
		<b>d</b>
87
		<!-- ... -->
88
		<b>vp</b>
89
		<b>wsg</b>
90
		<b>x</b>
91
	</boards_list>
92
	<!-- That's all - easy as fuck, is it? -->
93
</site>
94
</code></pre>
95
96
97
h2. Changelog
98
99
2012-12-01 / v1.1
100
* + *Support for boards.xml!*
101
* + Version information
102
* * Better stability 
103
* * Bugfixes
104
105
2012-06-24 / v1.0
106
* + First initial version
107
* + Supports only 4chan