|
|
|
|
@ -18,111 +18,115 @@ class Downloader { |
|
|
|
|
|
|
|
|
|
static func downloadWSOPResults() { |
|
|
|
|
|
|
|
|
|
let infos: [TS] = [ |
|
|
|
|
TS(id: "19728", date: "02/10/2021"), |
|
|
|
|
TS(id: "19729", date: "03/10/2021"), |
|
|
|
|
TS(id: "19730", date: "02/10/2021"), |
|
|
|
|
TS(id: "19732", date: "04/10/2021"), |
|
|
|
|
TS(id: "19733", date: "05/10/2021"), |
|
|
|
|
TS(id: "19731", date: "06/10/2021"), |
|
|
|
|
TS(id: "19734", date: "06/10/2021"), |
|
|
|
|
TS(id: "19926", date: "06/10/2021"), |
|
|
|
|
TS(id: "19927", date: "06/10/2021"), |
|
|
|
|
TS(id: "19737", date: "06/10/2021"), |
|
|
|
|
TS(id: "19735", date: "07/10/2021"), |
|
|
|
|
TS(id: "19736", date: "08/10/2021"), |
|
|
|
|
TS(id: "19738", date: "08/10/2021"), |
|
|
|
|
TS(id: "19739", date: "08/10/2021"), |
|
|
|
|
TS(id: "19740", date: "09/10/2021"), |
|
|
|
|
TS(id: "19741", date: "09/10/2021"), |
|
|
|
|
TS(id: "19928", date: "10/10/2021"), |
|
|
|
|
TS(id: "19742", date: "11/10/2021"), |
|
|
|
|
TS(id: "19743", date: "11/10/2021"), |
|
|
|
|
TS(id: "19745", date: "12/10/2021"), |
|
|
|
|
TS(id: "19747", date: "12/10/2021"), |
|
|
|
|
TS(id: "19748", date: "12/10/2021"), |
|
|
|
|
TS(id: "19749", date: "13/10/2021"), |
|
|
|
|
TS(id: "19744", date: "14/10/2021"), |
|
|
|
|
TS(id: "19751", date: "14/10/2021"), |
|
|
|
|
TS(id: "19752", date: "14/10/2021"), |
|
|
|
|
TS(id: "19750", date: "15/10/2021"), |
|
|
|
|
TS(id: "19754", date: "15/10/2021"), |
|
|
|
|
TS(id: "19753", date: "16/10/2021"), |
|
|
|
|
TS(id: "19755", date: "16/10/2021"), |
|
|
|
|
TS(id: "19756", date: "17/10/2021"), |
|
|
|
|
TS(id: "19757", date: "17/10/2021"), |
|
|
|
|
TS(id: "19759", date: "17/10/2021"), |
|
|
|
|
TS(id: "19929", date: "17/10/2021"), |
|
|
|
|
TS(id: "19761", date: "19/10/2021"), |
|
|
|
|
TS(id: "19762", date: "19/10/2021"), |
|
|
|
|
TS(id: "19758", date: "20/10/2021"), |
|
|
|
|
TS(id: "19763", date: "20/10/2021"), |
|
|
|
|
TS(id: "19764", date: "20/10/2021"), |
|
|
|
|
TS(id: "19765", date: "21/10/2021"), |
|
|
|
|
TS(id: "19766", date: "21/10/2021"), |
|
|
|
|
TS(id: "19767", date: "22/10/2021"), |
|
|
|
|
TS(id: "19768", date: "23/10/2021"), |
|
|
|
|
TS(id: "19769", date: "24/10/2021"), |
|
|
|
|
TS(id: "19770", date: "24/10/2021"), |
|
|
|
|
TS(id: "19771", date: "24/10/2021"), |
|
|
|
|
TS(id: "19930", date: "24/10/2021"), |
|
|
|
|
TS(id: "19832", date: "25/10/2021"), |
|
|
|
|
TS(id: "19774", date: "26/10/2021"), |
|
|
|
|
TS(id: "19772", date: "27/10/2021"), |
|
|
|
|
TS(id: "19773", date: "27/10/2021"), |
|
|
|
|
TS(id: "19775", date: "27/10/2021"), |
|
|
|
|
TS(id: "19776", date: "28/10/2021"), |
|
|
|
|
TS(id: "19778", date: "28/10/2021"), |
|
|
|
|
TS(id: "19779", date: "28/10/2021"), |
|
|
|
|
TS(id: "19780", date: "28/10/2021"), |
|
|
|
|
TS(id: "19782", date: "31/10/2021"), |
|
|
|
|
TS(id: "19784", date: "31/10/2021"), |
|
|
|
|
TS(id: "19931", date: "31/10/2021"), |
|
|
|
|
TS(id: "19781", date: "01/11/2021"), |
|
|
|
|
TS(id: "19786", date: "01/11/2021"), |
|
|
|
|
TS(id: "19785", date: "02/11/2021"), |
|
|
|
|
TS(id: "19788", date: "02/11/2021"), |
|
|
|
|
TS(id: "19789", date: "03/11/2021"), |
|
|
|
|
TS(id: "19790", date: "03/11/2021"), |
|
|
|
|
TS(id: "19792", date: "04/11/2021"), |
|
|
|
|
TS(id: "19793", date: "04/11/2021"), |
|
|
|
|
TS(id: "19795", date: "04/11/2021"), |
|
|
|
|
TS(id: "19794", date: "05/11/2021"), |
|
|
|
|
TS(id: "19791", date: "06/11/2021"), |
|
|
|
|
TS(id: "19796", date: "06/11/2021"), |
|
|
|
|
TS(id: "19797", date: "06/11/2021"), |
|
|
|
|
TS(id: "19805", date: "13/11/2021"), |
|
|
|
|
TS(id: "19802", date: "14/11/2021"), |
|
|
|
|
TS(id: "19807", date: "14/11/2021"), |
|
|
|
|
TS(id: "19809", date: "15/11/2021"), |
|
|
|
|
TS(id: "19811", date: "15/11/2021"), |
|
|
|
|
TS(id: "19933", date: "16/11/2021"), |
|
|
|
|
TS(id: "19934", date: "16/11/2021"), |
|
|
|
|
TS(id: "19808", date: "17/11/2021"), |
|
|
|
|
TS(id: "19813", date: "17/11/2021"), |
|
|
|
|
TS(id: "19815", date: "17/11/2021"), |
|
|
|
|
TS(id: "19798", date: "18/11/2021"), |
|
|
|
|
TS(id: "19814", date: "18/11/2021"), |
|
|
|
|
TS(id: "19816", date: "18/11/2021"), |
|
|
|
|
TS(id: "19817", date: "20/11/2021"), |
|
|
|
|
TS(id: "19818", date: "20/11/2021"), |
|
|
|
|
TS(id: "19819", date: "20/11/2021"), |
|
|
|
|
TS(id: "19820", date: "20/11/2021"), |
|
|
|
|
TS(id: "19821", date: "21/11/2021"), |
|
|
|
|
TS(id: "19822", date: "21/11/2021"), |
|
|
|
|
TS(id: "19823", date: "21/11/2021"), |
|
|
|
|
TS(id: "19827", date: "21/11/2021"), |
|
|
|
|
TS(id: "19828", date: "22/11/2021"), |
|
|
|
|
TS(id: "19829", date: "22/11/2021"), |
|
|
|
|
TS(id: "19936", date: "22/11/2021"), |
|
|
|
|
TS(id: "19935", date: "22/11/2021"), |
|
|
|
|
TS(id: "19830", date: "22/11/2021"), |
|
|
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
|
|
for info in infos { |
|
|
|
|
let ids = ["20342", "20387", "20301", "20607", "20327", "20599", "20305", "20358", "20320", "20313", "20339", "20598", "20329", "20383", "20350", "20328", "20334", "20368", "20375", "20374", "20325", "20370", "20343", "20344", "20600", "20323", "20309", "20379", "20384", "20337", "20373", "20605", "20318", "20601", "20340", "20330", "20314", "20352", "20603", "20304", "20324", "20386", "20315", "20341", "20322", "20604", "20354", "20382", "20363", "20377", "20359", "20366", "20331", "20336", "20376", "20606", "20345", "20346", "20385", "20311", "20312", "20303", "20308", "20326", "20378", "20356", "20602", "20371", "20369", "20357", "20361", "20608", "20319", "20347", "20306", "20310", "20609", "20367", "20351", "20349", "20321", "20348", "20355", "20333", "20360", "20389", "20372", "20338", "20353", "20364", "20317", "20335", "20307", "20332", "20610", "20316", "20381", "20388", "20302", "20380", "20362", "20365"] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// let infos: [TS] = [ |
|
|
|
|
// TS(id: "19728", date: "02/10/2021"), |
|
|
|
|
// TS(id: "19729", date: "03/10/2021"), |
|
|
|
|
// TS(id: "19730", date: "02/10/2021"), |
|
|
|
|
// TS(id: "19732", date: "04/10/2021"), |
|
|
|
|
// TS(id: "19733", date: "05/10/2021"), |
|
|
|
|
// TS(id: "19731", date: "06/10/2021"), |
|
|
|
|
// TS(id: "19734", date: "06/10/2021"), |
|
|
|
|
// TS(id: "19926", date: "06/10/2021"), |
|
|
|
|
// TS(id: "19927", date: "06/10/2021"), |
|
|
|
|
// TS(id: "19737", date: "06/10/2021"), |
|
|
|
|
// TS(id: "19735", date: "07/10/2021"), |
|
|
|
|
// TS(id: "19736", date: "08/10/2021"), |
|
|
|
|
// TS(id: "19738", date: "08/10/2021"), |
|
|
|
|
// TS(id: "19739", date: "08/10/2021"), |
|
|
|
|
// TS(id: "19740", date: "09/10/2021"), |
|
|
|
|
// TS(id: "19741", date: "09/10/2021"), |
|
|
|
|
// TS(id: "19928", date: "10/10/2021"), |
|
|
|
|
// TS(id: "19742", date: "11/10/2021"), |
|
|
|
|
// TS(id: "19743", date: "11/10/2021"), |
|
|
|
|
// TS(id: "19745", date: "12/10/2021"), |
|
|
|
|
// TS(id: "19747", date: "12/10/2021"), |
|
|
|
|
// TS(id: "19748", date: "12/10/2021"), |
|
|
|
|
// TS(id: "19749", date: "13/10/2021"), |
|
|
|
|
// TS(id: "19744", date: "14/10/2021"), |
|
|
|
|
// TS(id: "19751", date: "14/10/2021"), |
|
|
|
|
// TS(id: "19752", date: "14/10/2021"), |
|
|
|
|
// TS(id: "19750", date: "15/10/2021"), |
|
|
|
|
// TS(id: "19754", date: "15/10/2021"), |
|
|
|
|
// TS(id: "19753", date: "16/10/2021"), |
|
|
|
|
// TS(id: "19755", date: "16/10/2021"), |
|
|
|
|
// TS(id: "19756", date: "17/10/2021"), |
|
|
|
|
// TS(id: "19757", date: "17/10/2021"), |
|
|
|
|
// TS(id: "19759", date: "17/10/2021"), |
|
|
|
|
// TS(id: "19929", date: "17/10/2021"), |
|
|
|
|
// TS(id: "19761", date: "19/10/2021"), |
|
|
|
|
// TS(id: "19762", date: "19/10/2021"), |
|
|
|
|
// TS(id: "19758", date: "20/10/2021"), |
|
|
|
|
// TS(id: "19763", date: "20/10/2021"), |
|
|
|
|
// TS(id: "19764", date: "20/10/2021"), |
|
|
|
|
// TS(id: "19765", date: "21/10/2021"), |
|
|
|
|
// TS(id: "19766", date: "21/10/2021"), |
|
|
|
|
// TS(id: "19767", date: "22/10/2021"), |
|
|
|
|
// TS(id: "19768", date: "23/10/2021"), |
|
|
|
|
// TS(id: "19769", date: "24/10/2021"), |
|
|
|
|
// TS(id: "19770", date: "24/10/2021"), |
|
|
|
|
// TS(id: "19771", date: "24/10/2021"), |
|
|
|
|
// TS(id: "19930", date: "24/10/2021"), |
|
|
|
|
// TS(id: "19832", date: "25/10/2021"), |
|
|
|
|
// TS(id: "19774", date: "26/10/2021"), |
|
|
|
|
// TS(id: "19772", date: "27/10/2021"), |
|
|
|
|
// TS(id: "19773", date: "27/10/2021"), |
|
|
|
|
// TS(id: "19775", date: "27/10/2021"), |
|
|
|
|
// TS(id: "19776", date: "28/10/2021"), |
|
|
|
|
// TS(id: "19778", date: "28/10/2021"), |
|
|
|
|
// TS(id: "19779", date: "28/10/2021"), |
|
|
|
|
// TS(id: "19780", date: "28/10/2021"), |
|
|
|
|
// TS(id: "19782", date: "31/10/2021"), |
|
|
|
|
// TS(id: "19784", date: "31/10/2021"), |
|
|
|
|
// TS(id: "19931", date: "31/10/2021"), |
|
|
|
|
// TS(id: "19781", date: "01/11/2021"), |
|
|
|
|
// TS(id: "19786", date: "01/11/2021"), |
|
|
|
|
// TS(id: "19785", date: "02/11/2021"), |
|
|
|
|
// TS(id: "19788", date: "02/11/2021"), |
|
|
|
|
// TS(id: "19789", date: "03/11/2021"), |
|
|
|
|
// TS(id: "19790", date: "03/11/2021"), |
|
|
|
|
// TS(id: "19792", date: "04/11/2021"), |
|
|
|
|
// TS(id: "19793", date: "04/11/2021"), |
|
|
|
|
// TS(id: "19795", date: "04/11/2021"), |
|
|
|
|
// TS(id: "19794", date: "05/11/2021"), |
|
|
|
|
// TS(id: "19791", date: "06/11/2021"), |
|
|
|
|
// TS(id: "19796", date: "06/11/2021"), |
|
|
|
|
// TS(id: "19797", date: "06/11/2021"), |
|
|
|
|
// TS(id: "19805", date: "13/11/2021"), |
|
|
|
|
// TS(id: "19802", date: "14/11/2021"), |
|
|
|
|
// TS(id: "19807", date: "14/11/2021"), |
|
|
|
|
// TS(id: "19809", date: "15/11/2021"), |
|
|
|
|
// TS(id: "19811", date: "15/11/2021"), |
|
|
|
|
// TS(id: "19933", date: "16/11/2021"), |
|
|
|
|
// TS(id: "19934", date: "16/11/2021"), |
|
|
|
|
// TS(id: "19808", date: "17/11/2021"), |
|
|
|
|
// TS(id: "19813", date: "17/11/2021"), |
|
|
|
|
// TS(id: "19815", date: "17/11/2021"), |
|
|
|
|
// TS(id: "19798", date: "18/11/2021"), |
|
|
|
|
// TS(id: "19814", date: "18/11/2021"), |
|
|
|
|
// TS(id: "19816", date: "18/11/2021"), |
|
|
|
|
// TS(id: "19817", date: "20/11/2021"), |
|
|
|
|
// TS(id: "19818", date: "20/11/2021"), |
|
|
|
|
// TS(id: "19819", date: "20/11/2021"), |
|
|
|
|
// TS(id: "19820", date: "20/11/2021"), |
|
|
|
|
// TS(id: "19821", date: "21/11/2021"), |
|
|
|
|
// TS(id: "19822", date: "21/11/2021"), |
|
|
|
|
// TS(id: "19823", date: "21/11/2021"), |
|
|
|
|
// TS(id: "19827", date: "21/11/2021"), |
|
|
|
|
// TS(id: "19828", date: "22/11/2021"), |
|
|
|
|
// TS(id: "19829", date: "22/11/2021"), |
|
|
|
|
// TS(id: "19936", date: "22/11/2021"), |
|
|
|
|
// TS(id: "19935", date: "22/11/2021"), |
|
|
|
|
// TS(id: "19830", date: "22/11/2021"), |
|
|
|
|
// |
|
|
|
|
// ] |
|
|
|
|
|
|
|
|
|
for id in ids { |
|
|
|
|
sleep(1) |
|
|
|
|
downloadWSOPResults(tournamentInfo: info) |
|
|
|
|
downloadWSOPResults(id: id) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// for i in 19728...19732 { |
|
|
|
|
@ -135,17 +139,16 @@ class Downloader { |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
fileprivate static func downloadWSOPResults(tournamentInfo: TS) { |
|
|
|
|
fileprivate static func downloadWSOPResults(id: String) { |
|
|
|
|
|
|
|
|
|
print("Importing tournament \(tournamentInfo.id)") |
|
|
|
|
|
|
|
|
|
guard let url = URL(string: "https://www.wsop.com/tournaments/results/?aid=2&grid=4865&tid=\(tournamentInfo.id)&rr=5") else { |
|
|
|
|
print("Importing tournament \(id)") |
|
|
|
|
guard let url = URL(string: "https://www.wsop.com/tournaments/results/?aid=2&grid=4943&tid=\(id)&rr=5") else { |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
let realm = try! Realm() |
|
|
|
|
do { |
|
|
|
|
try realm.write { |
|
|
|
|
self.downloadWSOPResults(url: url, date: tournamentInfo.date) |
|
|
|
|
self.downloadWSOPResults(url: url) |
|
|
|
|
} |
|
|
|
|
} catch { |
|
|
|
|
print("error = \(error)") |
|
|
|
|
@ -153,7 +156,7 @@ class Downloader { |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
fileprivate static func downloadWSOPResults(url: URL, date: String, currentTournament: Tournament? = nil) { |
|
|
|
|
fileprivate static func downloadWSOPResults(url: URL, currentTournament: Tournament? = nil) { |
|
|
|
|
|
|
|
|
|
let realm = try! Realm() |
|
|
|
|
|
|
|
|
|
@ -177,9 +180,19 @@ class Downloader { |
|
|
|
|
let tour = realm.create(Tournament.self) |
|
|
|
|
tournament = tour |
|
|
|
|
|
|
|
|
|
// <p>Sunday, July 17, 2022 to Sunday, July 17, 2022</p> |
|
|
|
|
if let name = infos.slice(from: "<h1>", to: "</h1>") { |
|
|
|
|
tour.name = name |
|
|
|
|
tour.date = Formatter.basicDate.date(from: date) ?? Date() |
|
|
|
|
|
|
|
|
|
let fullDatesString = infos.slice(from: "<p>", to: "</p>") |
|
|
|
|
let fullDates = fullDatesString?.components(separatedBy: " to ") |
|
|
|
|
|
|
|
|
|
if let endString = fullDates?.last, let end = Formatter.longDate.date(from: endString) { |
|
|
|
|
tour.date = end |
|
|
|
|
} else { |
|
|
|
|
print("Using now for date") |
|
|
|
|
tour.date = Date() |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if let strNumber = name.slice(from: "Event #", to: ":"), let number = nf.number(from: strNumber) { |
|
|
|
|
tour.number = number.intValue |
|
|
|
|
@ -188,9 +201,11 @@ class Downloader { |
|
|
|
|
|
|
|
|
|
if name.contains("6-Handed") { |
|
|
|
|
tour.tableSize = 6 |
|
|
|
|
} else if name.contains("7-Handed") { |
|
|
|
|
tour.tableSize = 7 |
|
|
|
|
} else if name.contains("8-Handed") { |
|
|
|
|
tour.tableSize = 8 |
|
|
|
|
} else if name.contains("Heads-Up") { |
|
|
|
|
} else if name.contains("Heads-Up") || name.contains("Heads Up") { |
|
|
|
|
tour.tableSize = 2 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -302,7 +317,7 @@ class Downloader { |
|
|
|
|
let components = pages[i].components(separatedBy: "'") |
|
|
|
|
if let urlString = components.first, |
|
|
|
|
let url = URL(string: "https://www.wsop.com\(urlString)") { |
|
|
|
|
self.downloadWSOPResults(url: url, date: date, currentTournament: tournament) |
|
|
|
|
self.downloadWSOPResults(url: url, currentTournament: tournament) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|