This commit is contained in:
TheGeneralist 2026-01-14 23:30:08 +01:00
commit dbd23cde11
Signed by: thegeneralist01
SSH key fingerprint: SHA256:pp9qddbCNmVNoSjevdvQvM5z0DHN7LTa8qBMbcMq/R4
14 changed files with 2099 additions and 0 deletions

24
src/scrapers/twitter.rs Normal file
View file

@ -0,0 +1,24 @@
use anyhow::{Context, Result, bail};
use std::{path::PathBuf, process::Command};
pub fn scrape(url: &str) -> Result<PathBuf> {
let tweet_id = url.split('/').next_back().unwrap();
println!("Scraping tweet ID: {}", tweet_id);
let out = Command::new("python")
.arg("scrape_user_tweet_contents.py")
.arg("--tweet-ids")
.arg(tweet_id)
.output()
.with_context(|| "Failed to execute tweet scraping command")?;
println!("Output command: {:?}", out);
if PathBuf::from("scraped-tweets")
.join(format!("tweet-{}.toml", tweet_id))
.exists()
{
return Ok(PathBuf::from("scraped-tweets").join(format!("tweet-{}.toml", tweet_id)));
}
bail!("Scraping failed for tweet: {}", url)
}