Ik ben bezig voor een opdrachtgever om van een aantal sites snel quotes (odds) te halen en deze overzichtelijk weer te geven (op een privé-site of win app).
Voorbeeld:
- site: http://www.bodog.com/spor...b-baseball-team-props.jsp
- gegevens: alle odds voor: Will there be a Run scored in the First Inning?
Output:
Bodog.com mil phi 110 -140
Bodog.com bos cub -110 -120
Bodog.com det col -150 120
Bodog.com sea was 110 -140
Bodog.com tb pit 115 -155
Bodog.com ana nym 110 -140
Bodog.com bal cin -110 -120
Dit lukt me nog redelijk door het volgende te doen:
Nu zie ik bijvoorbeeld alweer een foutje: Er is 1 wedstrijd iets anders weergegeven en direct zijn de quotes bij de verkeerde wedstrijd...
Hoe kan ik kortom mijn methode robuuster maken? En hoe voorkom ik dat bij een lay-out change van één van de sites mijn scripts niet meer werken? Is mijn methode de slimste? Zijn er snellere methodes?
Als jullie ervaring hier mee hebben: hoe doen jullie dit?
Voorbeeld:
- site: http://www.bodog.com/spor...b-baseball-team-props.jsp
- gegevens: alle odds voor: Will there be a Run scored in the First Inning?
Output:
Bodog.com mil phi 110 -140
Bodog.com bos cub -110 -120
Bodog.com det col -150 120
Bodog.com sea was 110 -140
Bodog.com tb pit 115 -155
Bodog.com ana nym 110 -140
Bodog.com bal cin -110 -120
Dit lukt me nog redelijk door het volgende te doen:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
| $inhoud = file_get_contents("http://www.bodog.com/sports-betting/mlb-baseball-team-props.jsp"); $yes = explode("First Inning? ", $inhoud); $aantal = count($yes); $i=1; while($i < $aantal) { list($matchesraw, $zooi) = explode(")", $yes[$i], 2); $matches[$i] = $matchesraw; $matches[$i] = strtolower($matches[$i]); list($thuis[$i], $uit[$i]) = explode(" vs ", $matches[$i], 2); $thuis[$i] = str_replace("(", "", $thuis[$i]); $thuis[$i] = preg_replace("/\s+/", "", $thuis[$i]); $i++; } $yes = explode("Yes", $inhoud); $aantal = count($yes); $i=1; while($i < $aantal) { list($zooi, $raw1) = explode("future-checkbox\">", $yes[$i], 2); list($zooi, $raw2) = explode(">", $raw1, 2); list($quotes_yes[$i], $raw3) = explode("<", $raw2, 2); $i++; } $yes = explode("future-competitor-name\">No<BR>", $inhoud); $aantal = count($yes); $i=1; while($i < $aantal) { list($zooi, $raw1) = explode("future-checkbox\">", $yes[$i], 2); list($zooi, $raw2) = explode(">", $raw1, 2); list($quotes_no[$i], $raw3) = explode("<", $raw2, 2); $i++; } $i=1; while($i < $aantal) { echo "Bodog.com $thuis[$i] $uit[$i] $quotes_yes[$i] $quotes_no[$i]<br>"; $i++; } |
Nu zie ik bijvoorbeeld alweer een foutje: Er is 1 wedstrijd iets anders weergegeven en direct zijn de quotes bij de verkeerde wedstrijd...
Hoe kan ik kortom mijn methode robuuster maken? En hoe voorkom ik dat bij een lay-out change van één van de sites mijn scripts niet meer werken? Is mijn methode de slimste? Zijn er snellere methodes?
Als jullie ervaring hier mee hebben: hoe doen jullie dit?
[ Voor 8% gewijzigd door BKJ op 10-06-2005 20:45 ]