rest-server
trafilatura
rest-server | trafilatura | |
---|---|---|
8 | 13 | |
860 | 2,898 | |
3.8% | - | |
7.4 | 8.7 | |
5 days ago | 3 days ago | |
Go | Python | |
BSD 2-clause "Simplified" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rest-server
-
Ask HN: Has anyone successfully recovered photos from a broken Android phone?
Similar here. Termux with restic, so it does deduplication and encryption and such (also compression since a few months but haven't turned it on yet).
On local laptop: run https://github.com/restic/rest-server/ to accept the incoming data, then (if 1234 is the port that rest-server runs on):
user@laptop:~$ ssh -R 1234:localhost:1234 root@phone
-
How do you guys do backups?
I use restic to a cloud storage provider and restic-server to another nas. I used hyperbackup for a long time but proved to not be flexible enough and I wanted to get away from a proprietary backup that could only be restored on another Synology.
-
Need help by choosing the right backup-solution... Is there one recommended central tool that can backup the data from my servers?
Have a look at restic and restic-rest-server.
-
Onpremise cluster backup microk8s
Min.io is just one of the supported storage backends. If you prefer, the restic rest server seems to be supported and might be easier to host. https://github.com/restic/rest-server
-
Self-hosted service to backup physical machine, Vms and docker
restic with rest-server
-
Restic 0.13.0
This one is quite unclear:
> We have added checksums for various backends so data uploaded to a backend can be checked there.
What do you mean checksums? All data is already stored in files with as filename the sha256sum of the contents, so clearly it's all already checksummed and can be verified right?
Looking into the changelog entry[1], this is about verifying the integrity upon uploading:
> The verification works by informing the backend about the expected hash of the uploaded file. The backend then verifies the upload and thereby rules out any data corruption during upload. \n\n [...] besides integrity checking for uploads [this] also means that restic can now be used to store backups in S3 buckets which have Object Lock enabled.
Object lock is mentioned in passing (and only in this more detailed info) but this is a big one. S3 docs:
> Object Lock can help prevent objects from being deleted or overwritten for a fixed amount of time or indefinitely.
i.e. ransomware protection. Good luck wiping backups if your backup host refuses to overwrite or delete the files. And you know the files are good because they match their hash.
Extortion is still a thing, but if people would use this, it more-or-less wipes out the attack vector of ransomware. The only risk is if the attacker is in your systems long enough to outlast your retention period. Did anyone say "test your backups"?
For self-hosting, restic has a custom back-end called rest-server[2] for that which supports a so-called "append-only mode" (no overwriting or deleting). I worked on the docs for this[3] together with rawtaz and MichaelEischer to make this more secure, because eventually, of course, your disks are full or you want to stop paying for legacy data on S3, and an attacker could have added dummy backups to fool your automatic removal script into thinking it needs to leave only the dummy backups. Using the right retention options, this attack cannot happen.
Others are doing some pretty cool stuff in the backup sphere as well, e.g. bupstash[4] has public key encryption so you don't need to have the decryption keys as a backup client.
[1] https://github.com/restic/restic/releases/v0.13.0
[2] https://github.com/restic/rest-server/
[3] https://restic.readthedocs.io/en/latest/060_forget.html#secu...
[4] https://github.com/andrewchambers/bupstash/
-
Restic: Backups Done Right
The append-only mode can be implemented using https://github.com/restic/rest-server or services like rsync.net that offer read-only zfs snapshots. Doesn’t solve the asymmetric crypto of course.
-
What's something self hosted everyone needs to run ?
But how is that better than running the REST server which is also an HTTP-based API? Or is it? I suspect the answer is going to be system dependent but I am curious.
trafilatura
-
Trafilatura: Python tool to gather text on the Web
The feature list answers that question pretty well: https://github.com/adbar/trafilatura#features
Basically: you could implement all of this on top of BeautifulSoup - polite crawling policies, sitemap and feed parsing, URL de-duplication, parallel processing, download queues, heuristics for extracting just the main article content, metadata extraction, language detection... but it would require writing an enormous amount of extra code.
-
Show HN: Build AI Dags with Memory; Run and Validate LLM Tools in Containers
The WebScraper tool uses Trafilatura [1] to scrape and parse HTML—nothing too fancy. "Scraping" a React site would require a totally different approach, probably something more akin to Adept's ACT-1 [2].
I run a local chat app built with Griptape and I use it to give me summaries of web pages or answer specific questions all the time :)
1. https://github.com/adbar/trafilatura/
-
Powerful and free scraper with a headless browser under the hood and Readability for parsing
I've been playing with Trafilatura lately, and it's very good. There are a few very thorough comparisons to other projects and it really shines. It doesn't do anything headless from what I can tell, but it doesn't have to do the scraping itself. Maybe an option could be to use Playwright to scrape, then Trafilatura to parse. Food for thought.
-
I made a Chrome Extension that lets you ask any question about the page you are on (bluf.ai)
Cool! If you care to explain me further... :) ... I tried parsing a page using: https://github.com/adbar/trafilatura, json stringify it and passing it to https://platform.openai.com/docs/api-reference/embeddings/create. How do I use the response as an input later? <3
-
Testing fast installation in tear-down environment
I want to test how easy it is to install a package plus special extra dependencies to run a certain script in that package: https://github.com/adbar/trafilatura
- Advice on standard design pattern for comparison test script
- Automate dependency installation
- Issue with sklearn
- Questions about some code
- How does Firefox's Reader View work?
What are some alternatives?
restic - Fast, secure, efficient backup program
newspaper - newspaper3k is a news, full-text, and article metadata extraction in Python 3. Advanced docs:
Burp - burp - backup and restore program
python-goose - Html Content / Article Extractor, web scrapping lib in Python
BorgBackup - Deduplicating archiver with compression and authenticated encryption.
TWINT - An advanced Twitter scraping & OSINT tool written in Python that doesn't use Twitter's API, allowing you to scrape a user's followers, following, Tweets and more while evading most API limitations.
filemanager - 📂 Web File Browser
html2text - Convert HTML to Markdown-formatted text.
PhotoPrism - AI-Powered Photos App for the Decentralized Web 🌈💎✨
Goose3 - A Python 3 compatible version of goose http://goose3.readthedocs.io/en/latest/index.html
Invidious - Invidious is an alternative front-end to YouTube
textract - extract text from any document. no muss. no fuss.