import re
import time
import requests
from bs4 import BeautifulSoup
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"
}
result = []
for i in range(1, 82):
url = f"https://kumamate.net/data/?mode=rate&fighter={i}"
r = requests.get(url, headers=headers)
r.raise_for_status()
soup = BeautifulSoup(r.content, "html.parser")
for trs in soup.find_all("tr", class_=re.compile("RecentMatch[12]")):
tds = trs.find_all("td")
win, lose, _ = re.split("[Gewinnen oder verlieren]", tds[3].get_text(strip=True))
data = [
tds[0].img.get("alt"),
tds[2].get_text(strip=True),
int(win),
int(lose),
float(tds[4].get_text(strip=True).rstrip("%")),
]
result.append(data)
time.sleep(1)
result
import pandas as pd
df = pd.DataFrame(result, columns=["mich selber", "Gegner", "Sieg", "Niederlage", "Sieg率"])
#Berechnung der Anzahl der Verwendungen
df["Anzahl der Verwendungen"] = df["Sieg"] + df["Niederlage"]
#Gesamtzahl der Anwendungen durch Kämpfer
pv = df.pivot_table(values="Anzahl der Verwendungen", index="mich selber", aggfunc="sum").reset_index()
pv.rename(columns={"mich selber": "Gegner", "Anzahl der Verwendungen": "Registrationsnummer"}, inplace=True)
df1 = pd.merge(df, pv, on="Gegner")
#VIP-Berechnung
df1["VIP"] = df1["Registrationsnummer"] * df1["Gewinnrate"]
#Schließen Sie das gleiche Zeichen aus
df2 = df1[df1["mich selber"] != df1["Gegner"]].copy()
#VIP-Aggregation durch Kämpfer
pv1 = df2.pivot_table(values="VIP", index="mich selber", aggfunc="sum").sort_values(
by="VIP", ascending=False
)
pv1["VIP"] = (pv1["VIP"] // 100000).astype(int)
print(pv1.to_markdown())
mich selber | Anzahl der Verwendungen | |
---|---|---|
1 | Ganondorf | 24004 |
2 | Joker | 19527 |
3 | Bowser | 19016 |
4 | Mario | 17186 |
5 | Esel Kong | 15838 |
6 | Lucina | 15771 |
7 | Pudding | 13148 |
8 | Luca | 12628 |
9 | Wolke | 12264 |
10 | Roy | 11374 |
11 | Zelda | 11125 |
12 | Kapitän Falcon | 11044 |
13 | Baskenmütze / Beres | 10269 |
14 | Partena | 10159 |
15 | Mars | 10126 |
16 | Kirby | 9388 |
17 | Verknüpfung | 9173 |
18 | Gaogaen | 8657 |
19 | Falco | 8223 |
20 | Ness | 8061 |
21 | Roboter | 8032 |
22 | Incling | 7986 |
23 | Terry | 7955 |
24 | Wolf | 7867 |
25 | Pikachu | 7739 |
26 | Schlange | 7330 |
27 | Yoshi | 7275 |
28 | Geckouga | 6898 |
29 | Ike | 6333 |
30 | Mr.Spiel&Uhr | 6333 |
31 | Meen Meen | 6290 |
32 | Beyonetta | 6286 |
33 | Dedede | 6201 |
34 | Fuchs | 6198 |
35 | Ken | 6088 |
36 | Mutig | 6077 |
37 | Miu Zwei | 6037 |
38 | Rufure | 5917 |
39 | König Kruul | 5893 |
40 | Zero Suit Sams | 5454 |
41 | Kamui | 5453 |
42 | Ridley | 5446 |
43 | Pac-Man | 5262 |
44 | Pokemon Trainer | 5093 |
45 | Pakkun Blume | 5019 |
46 | Sams | 4854 |
47 | Schwarze Grube | 4733 |
48 | Dark Sams | 4716 |
49 | Wii Fit Trainer | 4693 |
50 | Chrom | 4630 |
51 | Doktor Mario | 4405 |
52 | Murabito | 4261 |
53 | Schulk | 4201 |
54 | Metanit | 4173 |
55 | suchen | 4127 |
56 | Luigi | 4103 |
57 | Bowser.Jr | 3974 |
58 | Pichu | 3886 |
59 | Banjo&Kazui | 3867 |
60 | Kleiner Mac | 3818 |
61 | Kinder Link | 3653 |
62 | Entenjagd | 3282 |
63 | Shizue | 3208 |
64 | Lucario | 3167 |
65 | Rockman | 3073 |
66 | Toon Link | 2954 |
67 | Schall | 2848 |
68 | Wario | 2506 |
69 | Picmin&Olimer | 2340 |
70 | Eiskletterer | 2324 |
71 | Grube | 2265 |
72 | Kampf gegen Mii | 2262 |
73 | Pfirsich | 2251 |
74 | Rosetta&Chico | 2192 |
75 | Mii schießen | 2169 |
76 | Ryu | 2151 |
77 | Gänseblümchen | 1880 |
78 | Diddy Kong | 1829 |
79 | Simon | 1554 |
80 | Richter | 1515 |
81 | Schwertkunst Mii | 1383 |
mich selber | VIP |
---|---|
Bowser.Jr | 303 |
Banjo&Kazui | 300 |
Richter | 299 |
Meen Meen | 296 |
Mii schießen | 295 |
Entenjagd | 291 |
Fuchs | 287 |
Rufure | 285 |
Kampf gegen Mii | 284 |
Rockman | 284 |
Gaogaen | 283 |
Mr.Spiel&Uhr | 282 |
Ken | 281 |
Dedede | 278 |
Schwertkunst Mii | 277 |
Geckouga | 276 |
Dark Sams | 276 |
Beyonetta | 275 |
Schlange | 274 |
Toon Link | 274 |
Schwarze Grube | 274 |
Simon | 273 |
Falco | 273 |
Pakkun Blume | 273 |
Diddy Kong | 273 |
Wii Fit Trainer | 272 |
Metanit | 272 |
Pfirsich | 272 |
Sams | 268 |
Zelda | 268 |
Ike | 268 |
Picmin&Olimer | 267 |
Grube | 267 |
Roboter | 266 |
Ryu | 266 |
Pac-Man | 266 |
Eiskletterer | 266 |
Rosetta&Chico | 265 |
Partena | 265 |
Murabito | 265 |
Mutig | 264 |
Doktor Mario | 264 |
Pokemon Trainer | 264 |
Gänseblümchen | 262 |
Verknüpfung | 261 |
Pichu | 260 |
Mario | 260 |
Chrom | 260 |
Kamui | 259 |
Yoshi | 259 |
König Kruul | 258 |
Wolf | 258 |
Kleiner Mac | 258 |
Lucario | 258 |
Wario | 257 |
Schulk | 257 |
Incling | 257 |
Wolke | 257 |
Roy | 256 |
Kinder Link | 256 |
Pikachu | 256 |
Bowser | 256 |
Miu Zwei | 256 |
Luigi | 255 |
Terry | 255 |
Schall | 255 |
Ness | 254 |
suchen | 254 |
Shizue | 253 |
Luca | 252 |
Kapitän Falcon | 250 |
Pudding | 250 |
Esel Kong | 249 |
Mars | 249 |
Lucina | 248 |
Zero Suit Sams | 246 |
Ridley | 245 |
Joker | 244 |
Kirby | 244 |
Baskenmütze / Beres | 241 |
Ganondorf | 240 |
[[Erstes Scraping] Ich habe versucht, einen VIP-Charakter für Smash Bra [Beautiful Soup] [Datenanalyse]] zu erstellen (https://qiita.com/daikiclimate/items/31f613da3600157cbecb)
Recommended Posts