From 4d0974948d8baedaa6eda4049d589274f69a9966 Mon Sep 17 00:00:00 2001 From: Sean Whalen Date: Tue, 5 Sep 2023 21:10:12 -0400 Subject: [PATCH] Update senders.sqlite --- parsedmarc/resources/senders/README.md | 8 +++++ parsedmarc/resources/senders/senders.sqlite | Bin 172032 -> 208896 bytes parsedmarc/resources/senders/updatedb.py | 32 ++++++++++++++++++-- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/parsedmarc/resources/senders/README.md b/parsedmarc/resources/senders/README.md index 1ebd729..56b84de 100644 --- a/parsedmarc/resources/senders/README.md +++ b/parsedmarc/resources/senders/README.md @@ -1,5 +1,12 @@ # About +A database of information about services that send email. + +## Updates + +To update the database with the latest information from dmarc.io][dmarc.io], start a +[Splash][splash] Docker container, then run `updatedb.py` + ## Credit `senders.sqlite` contains information from [dmarc.io][dmarc.io] that is licensed under a @@ -11,4 +18,5 @@ [Creative Commons Attribution-ShareAlike 4.0 International License][cc]. [dmarc.io]: https://dmarc.io/ +[splash]: https://splash.readthedocs.io/en/stable/ [cc]: https://creativecommons.org/licenses/by-sa/4.0/ \ No newline at end of file diff --git a/parsedmarc/resources/senders/senders.sqlite b/parsedmarc/resources/senders/senders.sqlite index 20692089833a21d01ed876adb4bd540c71a75838..43e8e0ce61d91d46990cb7f18ee659dc55485af7 100644 GIT binary patch delta 36975 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 delta 6737 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 NTSK`ZEdKxV{{vrEJca-O diff --git a/parsedmarc/resources/senders/updatedb.py b/parsedmarc/resources/senders/updatedb.py index ea34221..2a8fc52 100644 --- a/parsedmarc/resources/senders/updatedb.py +++ b/parsedmarc/resources/senders/updatedb.py @@ -1,3 +1,5 @@ +import requests + import sqlite3 from bs4 import BeautifulSoup @@ -35,8 +37,8 @@ CREATE TABLE IF NOT EXISTS "reverse_dns" ( ) """) curser = db.cursor() -with open("sources.html") as sources_file: - content = sources_file.read() +content = requests.get("http://localhost:8050/render.html", + params=dict(url="https://dmarc.io/sources/")).content soup = BeautifulSoup(content, "html.parser") table = soup.find("tbody") rows = table.find_all("tr") @@ -61,3 +63,29 @@ for row in rows: INSERT OR IGNORE INTO senders(name, spf_aligned, dkim_aligned, known_to_forward, dmarc_io_uri) values (?,?,?,?,?)""", params) db.commit() +content = requests.get("http://localhost:8050/render.html", + params=dict(url="https://dmarc.io/forwarders/")).content +soup = BeautifulSoup(content, "html.parser") +table = soup.find("tbody") +rows = table.find_all("tr") +for row in rows: + data = row.find_all("td") + link = data[0].find("a") + name = link.text + dmarc_io_uri = link.get("href") + forward_dkim_intact = len(data[1].find_all("i")) + forward_own_envelope_domain = len(data[2].find_all("i")) + params = (name, forward_dkim_intact, forward_own_envelope_domain, 1, + dmarc_io_uri) + curser.execute(""" + UPDATE senders + SET name = ?, + forward_dkim_intact = ?, + forward_own_envelope_domain = ?, + known_to_forward = ? + WHERE dmarc_io_uri = ?""", params) + db.commit() + curser.execute(""" + INSERT OR IGNORE INTO senders(name, spf_aligned, dkim_aligned, + known_to_forward, dmarc_io_uri) values (?,?,?,?,?)""", params) + db.commit()