2010-09-10 16 views
8

Ich hatte ein nettes und hacky Perl-Skript, um automatisch Verkaufsberichte von iTunes Connect zu scrappen und herunterzuladen. Ab heute überholte Apple die Website für Verkaufsberichte. Es sieht viel schöner aus, aber es verwendet eine Menge JavaScript und einfaches Scraping wird nicht mehr funktionieren.Verkaufsberichte automatisch von iTunes Connect herunterladen

Also weiß jemand eine Möglichkeit, diese neue Website effektiv zu kratzen?

Einige previousquestions verweisen auf verschiedene Skripts und Online-Dienste. Ich nehme an, dass sie jetzt alle auch gebrochen sind. Wenn Sie eines kennen, das noch funktioniert, lassen Sie es mich bitte wissen.

Antwort

7

http://code.google.com/p/appdailysales/ wurde gerade aktualisiert, um die Sept 2010 iTunes Connect Änderungen zu unterstützen.

bearbeiten: Bitte verwenden Sie http://www.apple.com/itunesnews/docs/Autoingestion.class.zip oder etwas auf dieser Grundlage, wie https://github.com/danieldickison/appdailysales

+0

Das funktioniert perfekt. Sehr gute Arbeit. Vielen Dank! –

+0

Um klar zu sein, das ist nicht meine Arbeit. Es ist http://stackoverflow.com/users/245020/kirby-t – Hafthor

+0

Ist es möglich, dass Apple die Dinge in den letzten 24 Stunden wieder verändert hat ?! Ich habe gerade das Skript v2.0.1 ausprobiert und es funktioniert nicht (Fehler in Zeile 245: Listenindex außerhalb des Bereichs) – Brian

1

Probieren Sie das kostenlose iMacros Firefox Addon. Es hat umfangreiche web scraping Unterstützung und da es im Browser funktioniert, kann es Javascript verarbeiten. Sie können es auch über die command line starten.

Bearbeiten: Dies funktioniert tatsächlich. Hier finden Sie ein Makro zum Herunterladen der letzten drei Tage mit Verkaufsberichten. Ich habe noch nicht versucht, mit Kommandozeilen-Tools zu integrieren, aber es sollte funktionieren.

VERSION BUILD=6650406 RECORDER=FX 
TAB T=1 
URL GOTO=https://itunesconnect.apple.com/ 
TAG POS=1 TYPE=INPUT:IMAGE FORM=NAME:appleConnectForm ATTR=NAME:1.Continue&&SRC:https://itunesconnect.apple.com/AppleConnect/US-EN/labelconnect/btn_signin.png 
TAG POS=1 TYPE=B ATTR=TXT:Sales<SP>and<SP>Trends 
TAG POS=1 TYPE=A ATTR=ID:theForm:saletestid 
TAG POS=1 TYPE=SELECT FORM=NAME:theForm ATTR=ID:theForm:datePickerSourceSelectElementSales CONTENT=1 
TAG POS=1 TYPE=A ATTR=ID:theForm:downloadLabel2 
ONDOWNLOAD FOLDER=~/Downloads/iTCSales/ FILE=Daily-{{!NOW:yyyymmdd}}-1.txt.gz WAIT=YES 
TAG POS=1 TYPE=SELECT FORM=NAME:theForm ATTR=ID:theForm:datePickerSourceSelectElementSales CONTENT=2 
TAG POS=1 TYPE=A ATTR=ID:theForm:downloadLabel2 
ONDOWNLOAD FOLDER=~/Downloads/iTCSales FILE=Daily-{{!NOW:yyyymmdd}}-2.txt.gz WAIT=YES 
TAG POS=1 TYPE=SELECT FORM=NAME:theForm ATTR=ID:theForm:datePickerSourceSelectElementSales CONTENT=3 
TAG POS=1 TYPE=A ATTR=ID:theForm:downloadLabel2 
ONDOWNLOAD FOLDER=~/Downloads/iTCSales FILE=Daily-{{!NOW:yyyymmdd}}-3.txt.gz WAIT=YES 
TAG POS=1 TYPE=DIV ATTR=TXT:Done 
TAG POS=1 TYPE=DIV ATTR=TXT:Done 
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:signOutForm ATTR=VALUE:Sign<SP>Out 
+0

ich normalerweise nicht von Windows verwenden, so würde ich eine virtuelle Maschine mit Windows und dem Firefox läuft dies nur zu halten hassen. Ich sehe, es gibt eine Chrome-Version, also werde ich sehen, ob das plattformübergreifend ist. –

+0

Egal, was ich vorher gesagt habe - iMacro funktioniert unter Mac OS X. Ich glaube, ich muss auf die Seite mit den Systemvoraussetzungen des IE-Plugins geschaut haben. –