Nabend, ich habe in einer Excel Tabelle in der Spalte A Herstellernamen und der Spalte B Herstellerteilenummern von 10000 Teilen und ich möchte in den Spalten C und D und E die Info haben ob es das Teil bei mouser / digikey / farnell, gibt mit Mengenangabe: A B C TDK MLJ1005WGHR27PTD25 19990 etc...(oder - wenn nicht vorhanden) Browser ist EDGE. Ich kann mir vorstellen dass noch wesentlich mehr infos nötig sind um überhaupt etwas dazu sagen zu können. Ich meine das System ist Windows 10. ich bringe aber gern noch mehr Hintergründe in Erfahrung, wenn es hilft. Hat jemand einen Tip wie man das einfach hinbekommen kann. Früher konnte man den Mousezeiger auf Positionen setzen und Buttons anklicken etc...und so eine Art Batch schreiben um sich mehrfach wiederholende Vorgänge einfach zu automatisieren.... Aber vielleicht gibt es heute ja noch einen subtileren Weg ... Danke
:
Bearbeitet durch User
Dennis S. schrieb: > Hat jemand einen Tip wie man das einfach hinbekommen kann. Google mal nach WebDriver
Und das Ergebnis davon sind dann regelmäßig 10.000 automatisierte
Anfragen bzw. Webseiten-Aufrufe bei Mouser und Farnell, nur um deren
Lagerbestand rauszufinden?
Das würde ich lassen wenn die Seiten dafür keine extra API anbieten,
sowas wird nicht gerne gesehen. Wahrscheinlich müsste man dafür sowieso
schon mit Proxies bzw. irgendwelchen Anonymisierungsdiensten rumspielen.
Wenn man das einfach so mit seiner ausgehenden IP macht, wird man
ziemlich sicher von Cloudflare oder ähnlichem vom DOS-Schutz gekickt.
> von Dennis S. (supernova)
Immerhin zeigt der Nickname, in welchen Dimensionen Du denkst... das
macht die Idee für ein solches Vorgehen verständlicher und beschreibt,
wie sich die Admins von Mouser und Farnell fühlen wenn sie diesen Thread
hier mitlesen.
:
Bearbeitet durch User
Dennis S. schrieb: > Aber vielleicht gibt es heute ja noch einen subtileren Weg ... Mit Web-Scraping. Hab ich mal gemacht, mit Python und der BeautifulSoup Library. Anleitung gibt es hier: https://www.geeksforgeeks.org/python-web-scraping-tutorial/ Aber immer schön zwischen den Abfragen kurzes (wechselndes) Delay einbauen. Funktioniert aber immmer nur eine Weile, sobald sich an der Seite etwas ändert kann es sein, dass Du erneut anpassen musst.
Thomas schrieb: > Aber immer schön zwischen den Abfragen kurzes (wechselndes) Delay > einbauen. > > Funktioniert aber immmer nur eine Weile, sobald sich an der Seite etwas > ändert kann es sein, dass Du erneut anpassen musst. Schon eine Seite wie Aliexpress, wird einen dann nach einem Nachweis dass man "Human" ist, fragen. Und noch ein bisschen spaeter, wollen sie dann, dass man sich mit seinem Account anmeldet. Und noch ein bisschen spaeter, wird dieser Account dann gesperrt. Und alles geht von vorn los.
Thomas schrieb: > Dennis S. schrieb: >> Aber vielleicht gibt es heute ja noch einen subtileren Weg ... > > Mit Web-Scraping. Hab ich mal gemacht, mit Python und der BeautifulSoup > Library. BeautifulSoup ist eine sehr leistungsfähige Library, allerdings vor allem auf die Manipulation des DOM spezialisiert. Für Web Scraping würde ich dagegen auf die darauf spezialisierte Library Scrapy empfehlen, die einem noch einen großen Haufen des "Drumherum" wie Connection Management, Authentifizierung, (Session-)Cookies, Parallelisierung und so weiter -- mit requests oder den Standard-urllibs muß man das ja alles manuell machen. > Anleitung gibt es hier: > https://www.geeksforgeeks.org/python-web-scraping-tutorial/ Bei "Geeks for Geeks" werde ich leider regelmäßig enttäuscht und würde anstelle dessen eher Real Python [2] empfehlen. Die haben auch etwas zu requests, BeautifulSoup und zu Scrapy. > Aber immer schön zwischen den Abfragen kurzes (wechselndes) Delay > einbauen. Auch das kann Scrapy schon von Haus aus. > Funktioniert aber immmer nur eine Weile, sobald sich an der Seite etwas > ändert kann es sein, dass Du erneut anpassen musst. Neben dieser Sache mit den Ressourcen auf beiden beteiligten Seiten -- der Server muß die Daten in ein HTML-Template einbauen, der Client muß sie dann wieder ausbauen, um wieder an die Rohdaten zu kommen, wie bescheuert -- ist diese Sache mit den Änderungen an einer Website einer der Hauptgründe dafür, warum erfahrene Entwickler sich als Erstes nach einer API umschauen. Denn die transportiert dann nur die Daten, das schont die Ressourcen des Servers und meine eigenen natürlich ebenfalls. :-) Wir sind mittlerweile sogar dazu übergegangen, beim Anbieter nachzufragen und meine Unterstützung anzubieten, wenn es keine öffentliche API gibt -- es ist manchmal sehr interessant, was für Antworten wir dabei erhalten. :-) [1] https://scrapy.org/ [2] https://realpython.com/
Dennis S. schrieb: > ich habe in einer Excel Tabelle in der Spalte A Herstellernamen und der > Spalte B Herstellerteilenummern von 10000 Teilen und ich möchte in den > Spalten C und D und E die Info haben ob es das Teil bei mouser / digikey > / farnell, gibt mit Mengenangabe: > > A B C > TDK MLJ1005WGHR27PTD25 19990 etc...(oder - wenn nicht vorhanden) > > Browser ist EDGE. Ich kann mir vorstellen dass noch wesentlich mehr > infos nötig sind Naja, das Minimum wäre wohl gewesen, auch noch zu erklären, was in Spalte C und D genau stehen soll. Spalte D hast du in deinem Beispiel-Datensatz ja nicht mal aufgeführt... Fakt ist jedenfalls: Es gibt (Web-)APIs der Distributoren, über die man diverse Informationen abrufen kann. Ganz sicher jedenfalls bei Mouser und Farnel, bei Digikey aber vermutlich ebenfalls. Allerdings brauchst du zur Benutzung dieser APIs eine Art "Key". Den musst du von den Distributoren anfordern, um das API benutzen zu können. I.d.R. gibt es auch diverse Limitierungen bezüglich der möglichen Häufigkeit von Abrufen. Und natürlich: die Antwort sieht je nach Anbieter immer anders aus. Sowohl bezüglich der Struktur als auch bezüglich der darin verfügbaren Inhalte. Das sind die Nachteile. Der Vorteil ist: du brauchst keinen Browser, um diese APIs benutzen zu können und du musst nicht aufwendig Webseiten parsen, um die gewünschten Infos herauszufischen. Die Antwort kommt einfach als JSON. Das muss natürlich auch geparsed werden, das ist aber um vieles einfacher, als eine dynamische Webseite zu parsen.
Hallo zusammen, danke für Eure Antworten. Momentan wir das händisch gemacht, das bindet viel Abreitskraft. Es geht nicht darum die Distris auszukundschaften, sondern um die Wahrscheinlichkeiten von Bauteilabkündigungen. Natürlich gibt es dazu Anbieter von Datenbanken und auch bereits existierende Daten - wir haben dazu auch teilweise Zugang, dennoch bleibt eine händische Ausarbeitung und Marktbeobachtung teilweise unumgänging... um sich einen Überblick zu verschaffen. Die Idee ist es, eben diese etwas zu erleichtern. Das ganze läuft entspannt, wenn wir hundert Werte am Tag checken ist das alles gut. Die hohe Anzahl war nur genannt, da es fortwährend läuft und somit ein Vorgang ist, der Potenzial zur teilweisen Automatisierung bietet... Ob S. schrieb: > genau stehen soll. C Warenbestand mouser D Warenbestand digikey E Warenbestand farnell Ob S. schrieb: > Es gibt (Web-)APIs der Distributoren, Danke für den Tip, dann werden wir da mal anfragen! Ob S. schrieb: > du brauchst keinen Browser Das sind bei uns Themen für die IT, da werden die eine Lösung finden. VG
:
Bearbeitet durch User
https://www.mouser.de/api-hub Die Mouser-Such-API ist eine leistungsstarke, aber dennoch einfache Möglichkeit, Zugriff auf Mouser-Produktdaten, Verfügbarkeit und Preise in Ihrer eigenen Anwendung zu erhalten und diese zu nutzen. https://de.farnell.com/en-DE/terms-of-use-for-api https://www.digikey.de/en/resources/api-solutions interessant, tolle Tips, vielen Dank!
:
Bearbeitet durch User
Dennis S. schrieb: > Aber vielleicht gibt es heute ja noch einen subtileren Weg ... müffelt nach Lisp..
Dennis S. schrieb: > https://www.mouser.de/api-hub > > > Die Mouser-Such-API ist eine leistungsstarke, aber dennoch einfache > Möglichkeit, Zugriff auf Mouser-Produktdaten, Verfügbarkeit und Preise > in Ihrer eigenen Anwendung zu erhalten und diese zu nutzen. > > https://de.farnell.com/en-DE/terms-of-use-for-api > > https://www.digikey.de/en/resources/api-solutions > > interessant, tolle Tips, vielen Dank! Octopart deckt viele Distributoren ab. https://octopart.com/ Eine API haben die auch. https://octopart.com/de/business/api/v4/api-transition fchk
im Notepad++ -Forum wird dir wahrscheinlich eine Suchen-Regex-Zeile für die gespeicherte internetseite empfohlen.
Das ändert aber nichts daran, daß die Methode einfach Müll ist. Wenn er da regelmäßig 10.000e HTTP(S)-Anfragen schickt, nur um den Lagerbestand rauszuparsen und in seiner Liste zu aktualisieren, wird ihn jeder Admin dafür mit dem Netzwerkkabel am Serverschrank aufknüpfen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.