Commit Graph

16 Commits

Author SHA1 Message Date
f0452ff9f7 fix: Change URL Value method to use value receiver for database encoding 2024-11-11 16:19:07 +02:00
bb49ea8565 fix: Update URL Value method to use pointer receiver for consistency 2024-11-11 16:19:06 +02:00
a19f157c80 fix: Implement database serialization for gemini URL type 2024-11-11 16:14:59 +02:00
8b341d2ac6 refactor: Simplify URL parsing and remove JSON-related methods 2024-11-11 16:14:58 +02:00
d5da9ac62d Better unicode conversion 2024-11-05 12:39:14 +02:00
a0563074ed Lint fixes. 2024-11-01 10:10:42 +02:00
ef3f009709 Add robots.txt checking
Still needs periodic cache refresh
2024-10-31 16:58:08 +02:00
c49a69728a Simplify robots.txt parsing logic 2024-10-23 14:28:49 +03:00
8d9ea6cdec fix: use hostname instead of host in gemini network connection 2024-10-23 12:46:48 +03:00
f9b5fd5e7f fix: Use parsedUrl.Hostname() for TLS SNI 2024-10-23 12:46:03 +03:00
62369d90ae fix: Refactor ConnectAndGetData function to return GeminiPageData struct 2024-10-23 12:46:02 +03:00
e51d84cad8 feat: Implement robots.txt parser 2024-10-23 09:26:39 +03:00
17ef03d621 feat: Batch insert links to improve database performance 2024-10-23 09:05:50 +03:00
a2a6bd200a Optimize worker random snapshot selection 2024-10-22 23:37:31 +03:00
3c5206ae43 Change blacklist to comprise domains. 2024-10-22 16:43:55 +03:00
cd60c1363b Lots of features, first version that reliably crawls Geminispace.
- [x] Concurrent downloading with workers
- [x] Concurrent connection limit per host
- [x] URL Blacklist
- [x] Save image/* and text/* files
- [x] Configuration via environment variables
- [x] Storing snapshots in PostgreSQL
- [x] Proper response header & body UTF-8 and format validation
.

.

.
2024-10-21 20:04:09 +03:00