Project

General

Profile

Wiki » History » Version 5

Komorek, Kamil, 06.01.2022 19:09

1 1 Komorek, Kamil
h1. dex_chan - 4chan and any chan board mass-image downloader
2
3 5 Komorek, Kamil
This app allows you to download all images from any 4chan-similar board.
4 1 Komorek, Kamil
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 4 Komorek, Kamil
* Flexible support - read below and edit @boards.xml@ file if your favourite chan is not supported
14 1 Komorek, Kamil
* Multithreaded downloader
15
* "Inteligent" queue
16
17 4 Komorek, Kamil
Language: English mixed with Polish
18 1 Komorek, Kamil
19
Have fun!
20
21
h2. Boards changelog
22
23 4 Komorek, Kamil
* 201711302230 - added @board_skip_1@ option (won't append "1" into first board page URL)
24 1 Komorek, Kamil
* 201505092200 - fixed 4chan patterns, 
25
* 201211302330 - first initial version, + 7chan support
26
27 4 Komorek, Kamil
*How to update boards definition?* Just delete @boards.xml@ and restart application.
28 1 Komorek, Kamil
29
h2. Requirements
30
31
 * It's written in C# .NET 3.5, may require latest M$ Windows updates and redistributed packages
32
 * It requires internet connection
33
34
h2. Download
35
36 4 Komorek, Kamil
Current Version: 1.3
37 1 Komorek, Kamil
Latest: http://dl.dexterxx.pl/pr/dex_chan/dex_chan.exe
38
39
h2. More to read:
40
41
* http://blog.dexterxx.pl/2012/12/01/hello-grudzien-dex_chan-v1-1/
42
* http://blog.dexterxx.pl/2015/02/16/wypiem-platforme-projektow-dexterxxprojects-bo-nie-mialem-cierpliwosci-do-drupala/
43
44
h2. Boards.xml quick tutorial
45
46
Open @boards.xml@, best is learn by example, so look at 4chan definition:
47
48
<pre><code class="xml">
49
<site>
50
	<name>4chan.org</name>
51
	<!-- Below is first-page board link look, eg.:
52
		http://boards.4chan.org/g/1
53
		http://boards.4chan.org/tv/1
54
		etc.,
55
		(first page may sometimes not work, but if you try /g/3 (as 3rd page) so you know that is good)
56
			@BOARD@ and @PAGE are required to specify. -->
57
	<board_url>http://boards.4chan.org/@BOARD@/@PAGE@</board_url>
58 4 Komorek, Kamil
	<!-- If you're getting 404 ("no topics found") after first board page (boards.chan.org/board/1 URL) setting 
59
		this into `true` won't add "1" in that case -->
60
	<board_skip_1>true</board_skip_1>
61 1 Komorek, Kamil
	<!-- Below is link to thread, eg.:
62
		http://boards.4chan.org/g/thread/57704107
63
		looks similar? g - @BOARD@ and 57704107 is @TID@ - thread id
64
	... -->
65
	<board_url_topic>http://boards.4chan.org/@BOARD@/thread/@TID@</board_url_topic>
66
	<!-- Below is url to target image (not thumbinal), eg.:
67
		http://i.4cdn.org/g/1480199776841.jpg
68 4 Komorek, Kamil
		so `g` is @BOARD@; `14801` is @FILE@ - so easy.
69 1 Komorek, Kamil
	-->
70
	<board_url_img>http://i.4cdn.org/@BOARD@/@FILE@</board_url_img>
71
	<!-- Now more complex... below is regexp which allows app to recognize what is what in board
72
		MATCHED must be in first () - that may be little difficult, sorry for that
73
	-->
74
	<patterns>
75
		<!-- Link to topic (often it's "Reply" pattern) - it resolves to @TID@ -->
76
		<reply><![CDATA[<a href=\"thread/([0-9]{2,15})/?[a-zA-Z0-9-]+?\".?(class=\"replylink\")?>Reply</a>]]></reply>
77
		<!-- Resolves to @FILE@ - only filename - 1480199776841.jpg from our above example
78
			IMPORTANT: first match must resolves to filename and second match to extension
79
			so: 1480199776841.jpg -> 1: (1480199776841) 2: (jpg)
80
			dunno why i did that in past ;)
81
		-->
82
		<image><![CDATA[<a class=\"fileThumb\" href=\"//i\.4cdn\.org/[a-zA-Z0-9]+/([0-9]+)\.([a-zA-Z0-9]{2,5})\" target=\"_blank\">]]></image>
83
	</patterns>
84
	<!-- Below is boards on that chan
85
		Values are injected into @BOARD@ variable.
86
		-->
87
	<boards_list>
88
		<b>a</b>
89
		<b>b</b>
90
		<b>c</b>
91
		<b>d</b>
92
		<!-- ... -->
93
		<b>vp</b>
94
		<b>wsg</b>
95
		<b>x</b>
96
	</boards_list>
97
	<!-- That's all - easy as fuck, is it? -->
98
</site>
99
</code></pre>
100
101
102
h2. Changelog
103 4 Komorek, Kamil
104
2017-11-30 / v1.3
105
* + Added fake UserAgent (required at least with 4chan)
106
* + Added option to skip appending '1' at first board page
107
* + Added link to this homepage ;)
108
* * Some improvements
109 1 Komorek, Kamil
110 3 Komorek, Kamil
2016-11-27 / v1.2
111
* + Fully english version
112
* + Better support about new versions of app
113
* * Updated project links
114
* ! MS VS 2013 Compilation
115
116 1 Komorek, Kamil
2012-12-01 / v1.1
117 3 Komorek, Kamil
* + Support for boards.xml!
118 1 Komorek, Kamil
* + Version information
119
* * Better stability 
120
* * Bugfixes
121
122
2012-06-24 / v1.0
123
* + First initial version
124
* + Supports only 4chan