BinaryWorks.it Official Forum
Home
|
Profile
|
Register
|
Active Topics
|
Members
|
Search
|
FAQ
All Forums
eXtreme Movie Manager 8, 9, 10 Forum
Scripts
IMDb API & Web Scraping
Note:
Only the poster of this message, and the Moderator can edit the message.
Screensize:
640 x 480
800 x 600
1024 x 768
1280 x 1024
UserName:
Password:
Format Mode:
Basic
Help
Prompt
Format:
Font
Andale Mono
Arial
Arial Black
Book Antiqua
Century Gothic
Comic Sans MS
Courier New
Georgia
Impact
Lucida Console
Script MT Bold
Stencil
Tahoma
Times New Roman
Trebuchet MS
Verdana
Size
1
2
3
4
5
6
Color
Black
Red
Yellow
Pink
Green
Orange
Purple
Blue
Beige
Brown
Teal
Navy
Maroon
LimeGreen
Message:
* HTML is OFF
*
Forum Code
is ON
Smilies
Wie gesagt, wenn du die Variablen und deren Strukturen untersuchen möchtest, solltest du debuggen - oder noch besser: die Source vom IMDbScraper-Projekt mal runterladen und dort beim UnitTests -> TestTitle.cs die Methode WholeTitleAndDebug() mal ausführen. Die pausiert die Ausführung am Ende und du befindest dich im Debug-Modus, wo du alle lokalen Variablen siehst und deren Strukturen aufklappen und untersuchen kannst. Obacht: das dauert gut und gerne 1-2 Minuten, bis er da alles gescraped hat. Also Geduld. Personen könnte ich ergänzen, aber ich habe mich gefragt: wozu? Man braucht deren Infos für eine Mediendatenbank eigentlich nie - da reichen die Infos, welche Personen an einem Titel beteiligt waren und genau das habe ich ja schon mit drin (bspw. https://github.com/tardezyx/tar.IMDbScraper/blob/main/Images/Crew.png). Hier fällt mir grad ein, dass du auch die Bilder durchgehen könntest - da siehst du ja die Strukturen direkt :) Die C#-Syntax finde ich wesentlich lesbarer als VB. Bei Delphi (was wohl von Turbo Pascal kommt?) sehe ich es ähnlich. Klar, ist es etwas Umgewöhnung und das Ganze von mir für dich auch flink hingebastelt. Du kannst das alles noch sauber in separate (Hilfs-)Klassen und separate Methoden aufdröseln, damit es für dich übersichtlicher wird. Statt Listen kannst du auch Arrays oder IENumerables nutzen - Listen sind aber einfacher zu handhaben und du kannst direkt auf die Strukturen/Klassen, die sich darin befinden, zugreifen. Genau dafür eignet sich LINQ sehr gut, dessen Syntax aber für sich wiederum gewöhnungsbedürftig ist. Bspw. könntest du so direkt den deutschen Titel rausfischen (falls vorhanden): [code]string? germanTitle = alternateTitles.FirstOrDefault(x => x.Country?.ID == "DE" || x.Country?.ID == "XWG")?.Title;[/code] "XWG" ist der Ländercode bei IMDb für Westdeutschland. Denk dran, dass es auch einen für Ostdeutschland gibt, der mir aber grad entfallen ist. Ferner gibt es andere Scrapermethoden, wo du den Originaltitel und Lokalen Titel direkt erhälst. Aber ist ja nur ein Beispiel, um dir LINQ zu verdeutlichen. Ja, sobald sich die IMDb-Seiten ändern, muss der Scraper aktualisiert werden. Deswegen wäre es mir lieber, direkt alles per JSON scrapen zu können, doch da fehlt einiges. Bspw. die Produktionstermine, da ich hier keinen Film mit mehr als 5 Einträgen gefunden habe, wo dann halt dieses "mehr"-Button auftaucht - und daher auch die JSON-Methode nicht abrufen/sehen und zum Einbauen entsprechend abkupfern konnte.
Check here to include your profile signature.
BinaryWorks.it Official Forum
© Binaryworks.it
Generated in 0.03 sec.