47 lines
2.1 KiB
Python
47 lines
2.1 KiB
Python
import json, urllib.request, urllib.parse, time
|
|
|
|
urls = {
|
|
"Littlefield": "https://www.leagle.com/decision/19972302940p2d136212273",
|
|
"Kovacs": "https://www.leagle.com/decision/1993916121wn2d7951867",
|
|
"Chumbley": "https://www.leagle.com/decision/200320374p3d1291201",
|
|
"Short": "https://www.leagle.com/decision/1995990125wn2d8651942",
|
|
"Borghi": "https://www.leagle.com/decision/inwaco20091105c91",
|
|
"Elam": "https://www.leagle.com/decision/198290897wn2d8111823",
|
|
"Konzen": "https://www.leagle.com/decision/1985573103wn2d4701535",
|
|
"Skarbek": "https://www.leagle.com/decision/20001444997p2d44711431",
|
|
"PearsonMaines": "https://www.leagle.com/decision/199393070wnapp8601840",
|
|
"Olivares": "https://www.leagle.com/decision/199339369wnapp3241358",
|
|
"Sedlock": "https://www.leagle.com/decision/199355369wnapp4841494",
|
|
"Glorfield": "https://www.leagle.com/decision/198038527wnapp3581343",
|
|
"Hadley": "https://www.leagle.com/decision/197773788wn2d6491672",
|
|
"Mueller": "https://www.leagle.com/decision/2007735167p3d5681730",
|
|
"Schwarz": "https://www.leagle.com/decision/inwaco20160115u75",
|
|
"Kraft": "https://www.leagle.com/decision/1992557119wn2d4381530",
|
|
"Berol": "https://www.leagle.com/decision/195041737wn2d3801367",
|
|
"Brewer": "https://www.leagle.com/decision/19991078976p2d10211078",
|
|
}
|
|
|
|
def get(url, tries=2):
|
|
for i in range(tries):
|
|
try:
|
|
req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"})
|
|
with urllib.request.urlopen(req, timeout=40) as r:
|
|
return json.loads(r.read())
|
|
except Exception as e:
|
|
if i == tries-1:
|
|
return {"error": str(e)}
|
|
time.sleep(5)
|
|
|
|
out = {}
|
|
for name, u in urls.items():
|
|
d = get("https://archive.org/wayback/available?url=" + urllib.parse.quote(u, safe=""))
|
|
snap = None
|
|
if "archived_snapshots" in d and d["archived_snapshots"].get("closest", {}).get("available"):
|
|
snap = d["archived_snapshots"]["closest"]["url"]
|
|
out[name] = snap
|
|
print(name, "=>", snap or "NO SNAPSHOT")
|
|
time.sleep(2.5)
|
|
|
|
json.dump(out, open("/Users/drjones/astraea-books/.case-verify/leagle/snapshots.json", "w"), indent=1)
|
|
print("saved snapshots.json")
|