multistockphoto 0.8.0 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +9 -0
- data/Manifest.txt +1 -0
- data/bin/multistockphoto +162 -75
- data/bin/multistockphoto-gui +36 -1
- data/config.yaml +7 -0
- data/lib/multistockphoto/generic_site.rb +13 -1
- data/lib/multistockphoto/photo.rb +64 -33
- data/lib/multistockphoto/sender.rb +4 -0
- data/lib/multistockphoto/site_fotolia.rb +22 -1
- data/lib/multistockphoto/site_panthermedia.rb +132 -0
- data/lib/multistockphoto/site_photocase.rb +72 -59
- data/lib/multistockphoto/site_zoonar.rb +3 -2
- data/lib/multistockphoto/version.rb +1 -1
- data/lib/multistockphoto.rb +1 -0
- data/test/test_multistockphoto.rb +153 -49
- data/website/index.html +650 -900
- data/website/index.txt +236 -22
- metadata +15 -5
data/website/index.txt
CHANGED
@@ -24,8 +24,9 @@ Zuwendung unterstützen (ansonsten müßte ich mich verstärkt anderen Projekten
|
|
24
24
|
widmen, die mehr finanziellen Ertrag einbringen, damit ich auch morgen noch
|
25
25
|
für meine Katzen das Futter kaufen kann :-)).
|
26
26
|
|
27
|
-
Am bequemsten kannst du per Paypal an die Email-Adresse
|
28
|
-
bezahlen.
|
27
|
+
Am bequemsten kannst du per Paypal an die Email-Adresse thopre@gmail.com
|
28
|
+
bezahlen.
|
29
|
+
Falls du per Überweisung zahlen willst, frage bitte nach meiner Kontoverbindung!
|
29
30
|
|
30
31
|
Ich werde, aufteilt pro Quartal, eine Liste der Spender mit Namen und Betrag,
|
31
32
|
sortiert nach Spendenhöhe hier veröffenlichen. Wenn von dir nichts anderes
|
@@ -35,11 +36,16 @@ z. B. "Firma ABC GmbH" oder anonym, dann teile mir dies bitte mit!
|
|
35
36
|
|
36
37
|
h3. Spender
|
37
38
|
|
39
|
+
h4. Juli-September 2008
|
40
|
+
|
41
|
+
table.
|
42
|
+
|Betrag|Name|
|
43
|
+
|
38
44
|
h4. April-Juni 2008
|
39
45
|
|
40
46
|
table.
|
41
47
|
|Betrag|Name|
|
42
|
-
|
|
48
|
+
|1,00 €|Testspender|
|
43
49
|
|
44
50
|
|
45
51
|
h2. Installing
|
@@ -113,14 +119,14 @@ einmal gesendet.
|
|
113
119
|
|
114
120
|
Grundsätzlich werden alle Dateien mit den Endungen
|
115
121
|
.PNG|.JPG|.GIF|.JPEG|.EPS|.AI|.PSD|.PDF|.TIF|.TIFF
|
116
|
-
von diesem Programm
|
122
|
+
von diesem Programm berücksichtigt und hochgeladen.
|
117
123
|
Groß- oder Kleinschreibung ist egal. Es gibt jedoch pro Photo-Site
|
118
124
|
Einschränkungen, welche Formate diese Site verarbeiten kann. Es kann also sein,
|
119
125
|
daß eine Site .PSD Dateien verarbeiten kann, die andere jedoch nur mit .JPG
|
120
126
|
Dateien etwas anfangen kann.
|
121
127
|
Eine automatische Konvertierung von einem ins andere Format wird von diesem
|
122
128
|
Programm nicht vorgenommen - du bist also selbst dafür verantwortlich,
|
123
|
-
daß ein Bild im richtigen Format an die
|
129
|
+
daß ein Bild im richtigen Format an die richtige Site gelangt.
|
124
130
|
|
125
131
|
TODO: Hier fällt mir ein: es ist etwas problematisch, wenn man an eine Site
|
126
132
|
eine PSD-Datei schickt und diese auch an andere Sites hochladen will, die
|
@@ -240,6 +246,52 @@ vermieden, daß trotz eines maximalen Upload-Limits oder weil diese Site tempor
|
|
240
246
|
nicht erreichbar ist, immer wieder vergeblich versucht wird, Photos an diese
|
241
247
|
Site zu senden.
|
242
248
|
|
249
|
+
Weitere Beispiele:
|
250
|
+
|
251
|
+
<pre>multistockphoto --send-all --verbose --tags-only --count=10 --shuffle</pre>
|
252
|
+
|
253
|
+
Senden aller noch nicht gesendeten Photos, ausführliche Ausgabe, nur Photos mit
|
254
|
+
Tags-Files senden, nur senden, wenn mindestens 10 Tags in der Tags-Datei vorhanden
|
255
|
+
sind, in zufälliger Reihenfolge senden.
|
256
|
+
|
257
|
+
Diesen Aufruf könnte man sich in einem Shell-Skript/Batch-Datei speichern, so
|
258
|
+
daß man ihn bei jedem regulären Hochladen von Photos bequem aufrufen kann.
|
259
|
+
|
260
|
+
<pre>multistockphoto --send-all --verbose --tags-only --count=10 --ordered</pre>
|
261
|
+
|
262
|
+
Wie zuvor, jedoch wird in alphabetischer Sortierung der Bilddateien gesendet.
|
263
|
+
|
264
|
+
<pre>multistockphoto --send-all --verbose --tags-only --count=10</pre>
|
265
|
+
|
266
|
+
Wie zuvor, jedoch ist keine Sortierung vorgegeben. Das Senden erfolgt in der
|
267
|
+
Reihenfolge, wie die Dateien im Filesystem gefunden werden.
|
268
|
+
|
269
|
+
<pre>multistockphoto --send-all --total-transfers=7</pre>
|
270
|
+
|
271
|
+
Senden von noch nicht gesendeten Photos. Das Hochladen, wird aber beendet,
|
272
|
+
wenn insgesamt 7 Photos hochgeladen wurden.
|
273
|
+
|
274
|
+
<pre>multistockphoto --send-all --total-per-site=5</pre>
|
275
|
+
|
276
|
+
Senden von noch nicht gesendeten Photos. Das Hochladen, wird aber beendet,
|
277
|
+
wenn an jede aktive Site 5 Photos hochgeladen wurden.
|
278
|
+
|
279
|
+
<pre>multistockphoto --not-sent</pre>
|
280
|
+
|
281
|
+
Gibt aus, wieviele Photo pro Site noch nicht gesendet wurden.
|
282
|
+
|
283
|
+
<pre>multistockphoto --no-tags</pre>
|
284
|
+
|
285
|
+
Listet Photo-Dateien auf, die noch keine zugehörige .tags-Datei haben.
|
286
|
+
|
287
|
+
<pre>multistockphoto --no-tags --count=10</pre>
|
288
|
+
|
289
|
+
Listet Photo-Dateien auf, die noch keine zugehörige .tags-Datei haben oder deren
|
290
|
+
.tags-Datei weniger als 10 Keywords enthält.
|
291
|
+
|
292
|
+
Bei den beiden letzten Beispielen kann zusätzlich noch der Parameter --ordered
|
293
|
+
angegeben werden, um die Datei alphabetisch aufsteigend auszugeben.
|
294
|
+
|
243
295
|
h2. Photo-Titel und Stichworte
|
244
296
|
|
245
297
|
Bei jeder Photo-Site ist es notwendig, hochgeladene Photos mit einem Titel und
|
@@ -359,7 +411,8 @@ eine Minute zu pausieren, und dann das gleiche, bis man das Kommando abbricht.
|
|
359
411
|
|
360
412
|
Dann öffne ich eine weitere Shell, gehe innerhalb es multistockphoto-Verzeichnisses
|
361
413
|
ins upload-Verzeichnis, suche mir aus der Liste ein Photo nach dem anderen heraus
|
362
|
-
und erstelle mit einem beliebigen Texteditor
|
414
|
+
und erstelle mit einem beliebigen Texteditor (ich verwende 'vi', auch als 'vim'
|
415
|
+
bekannt) z.B. die Datei IMG_5434.tags.
|
363
416
|
|
364
417
|
Dann suche ich mir das nächste Bild aus der Liste aus, usw.
|
365
418
|
Bei Bildern, die das gleiche Motiv haben und die gleichen Keywords bekommen sollen,
|
@@ -453,10 +506,10 @@ Auflisten aller komplett gesendeten Photos
|
|
453
506
|
Um Photos aufzulisten, die bereits an alle Photo-Sites gesendet wurden, gibt
|
454
507
|
es den Schalter --list-done
|
455
508
|
|
456
|
-
Verschieben aller komplett gesendeten Photos ins done-Directory
|
457
|
-
|
458
509
|
h3. --purge-done
|
459
510
|
|
511
|
+
Verschieben aller komplett gesendeten Photos ins done-Directory
|
512
|
+
|
460
513
|
Falls du Photos aus dem Arbeitsdirectory löschen möchtest (aus Platzgründen oder
|
461
514
|
weil du alte Dateien dort nicht mehr haben willst), die bereits an alle
|
462
515
|
definierten Sites gesendet wurden, rufe
|
@@ -473,6 +526,10 @@ Das done-Directory wird automatisch angelegt, falls es noch nicht existiert.
|
|
473
526
|
Die Dateien im done-Directory kannst du nun entweder löschen oder, je nach
|
474
527
|
Bedarf irgendwie archivieren.
|
475
528
|
|
529
|
+
Ich lasse die Bilder im done-Directory aber einfach erstmal dort stehen, damit
|
530
|
+
das upload-Directory übersichtlicher bleibt und nur die noch nicht vollständig
|
531
|
+
gesendeten Bilder enthält.
|
532
|
+
|
476
533
|
Bitte beachte aber, daß, falls du später eine weitere Photo-Site definierst,
|
477
534
|
diese alten Bilder nicht mehr an die neue Photo-Site geschickt werden. Falls
|
478
535
|
du sie jedoch im Arbeitsverzeichnis beläßt, werden auch diese alten Bilder
|
@@ -523,15 +580,19 @@ Dateien mit <pre>multistockphoto --no-tags --count 7</pre> zu testen um ggf. Key
|
|
523
580
|
Bei einer Annahme eines Bildes bei zoonar, müssen mindestens 10 Keywords angegeben
|
524
581
|
sein. Wenn du auch diesen Fall abdecken willst, gib
|
525
582
|
<pre>multistockphoto --no-tags --count 10</pre> an -
|
526
|
-
damit sind dann alle Sites
|
583
|
+
damit sind dann alle Sites zufrieden.
|
527
584
|
|
528
|
-
Achtung: die zweite Form dauert wesentlich länger, wenn du mit vielen Dateien
|
585
|
+
<s>Achtung: die zweite Form dauert wesentlich länger, wenn du mit vielen Dateien
|
529
586
|
im Upload-Directory arbeitest (ca. ab 500-1000).
|
530
587
|
|
531
588
|
Zeiten bei mir (1550 Bilddateien)
|
532
589
|
|
533
590
|
1. ohne --count Parameter: 6 Sekunden
|
534
591
|
2. mit --count Parameter: 6 Minuten, 12 Sekunden
|
592
|
+
</s>
|
593
|
+
|
594
|
+
Ist mindestens seit dem Release 0.8.0 annähernd gleich schnell.
|
595
|
+
|
535
596
|
|
536
597
|
h3. --tags-only
|
537
598
|
|
@@ -573,7 +634,7 @@ um die Dateien sortiert nach dem Dateinamen auszugeben.
|
|
573
634
|
|
574
635
|
h3. --count N
|
575
636
|
|
576
|
-
Diese Option kann in Verbindung mit --send-all
|
637
|
+
Diese Option kann in Verbindung mit --send-all oder --no-tags verwendet werden
|
577
638
|
und bedeutet, daß mindestens N Keywords zu einer Datei vorhanden sein müssen.
|
578
639
|
Alleine für sich kann diese Option nicht verwendet werden.
|
579
640
|
|
@@ -583,10 +644,22 @@ In Verbindung mit --no-tags werden auch solche Photos aufgelistet bei denen
|
|
583
644
|
nicht nur die Tags-Datei fehlt sondern bei denen sie existiert, aber zu wenige
|
584
645
|
Tags enthält.
|
585
646
|
|
647
|
+
h3. --shuffle
|
648
|
+
|
649
|
+
Dieser Schalter dient, in Verbindung mit --send-all oder ähnlichen Befehlen, dazu,
|
650
|
+
nicht in der Reihenfolge wie sie durch das Dateisystem oder durch alphabetische
|
651
|
+
Sortierung vorgegeben ist, zu senden, sondern (ähnlich wie bei einem MP3-Player)
|
652
|
+
die Photos in zufälliger Reihenfolge zu senden.
|
653
|
+
|
654
|
+
Die Schalter --ordered und --shuffle schließen sich gegenseitig aus. Falls beide
|
655
|
+
angegeben werden, ist nicht definiert, in welcher Reihenfolge die Abarbeitung
|
656
|
+
erfolgt.
|
657
|
+
|
586
658
|
h3. --dont-send und --dont-log
|
587
659
|
|
588
660
|
Diese beiden Optionen sind eigentlich nur für interne Unit-Tests der Programme
|
589
|
-
gedacht und sollten nicht für den produktiven Einsatz verwendet werden.
|
661
|
+
gedacht und sollten nicht für den produktiven Einsatz verwendet werden, bzw.
|
662
|
+
sind dort nicht sinnvoll.
|
590
663
|
|
591
664
|
--dont-send sendet eine Datei nicht wirklich an die betreffende Site.
|
592
665
|
|
@@ -640,7 +713,7 @@ Wenn deine Kamera nicht erkennen kann, ob ein Photo im Hochformat aufgenommen
|
|
640
713
|
wurde, dann drehe das Bild vor dem Hochladen mit dem Schalter '--rotate' oder
|
641
714
|
einen anderen Programm, welches Bilder drehen kann!
|
642
715
|
|
643
|
-
Übrigens: Photos im Hochformat nimmt man folgendermaßen auf !facy_boy.gif
|
716
|
+
Übrigens: Photos im Hochformat nimmt man folgendermaßen auf !facy_boy.gif(Bild richtige Kamerahaltung bei Hochformat)!,
|
644
717
|
und
|
645
718
|
nicht so wie man es von besonders cool wirkend wollenden Digicam-Knipsern des
|
646
719
|
öfteren sieht, mit der auslösenden Hand nach unten. Der Grund ist einfach der,
|
@@ -660,14 +733,22 @@ realisiert haben möchtest, schreib mir!
|
|
660
733
|
Ebenso bin ich auch bereit (exklusive) kommerzielle Entwicklung für weitere Sites
|
661
734
|
anzubieten.
|
662
735
|
|
736
|
+
Meine eigenen Bilder scheinen bei Zoonar am besten anzukommen. Dort habe ich bereits
|
737
|
+
über 40 akzeptiert Bildere, danach kommt Fotolia mit immerhin schon vier Bildern.
|
738
|
+
Bei Photocase und Dreamstime ist es mir aber bis heute nicht gelungen, auch nur
|
739
|
+
ein einziges Bild unterzubringen (nein, an meinem Programm liegt das nicht :-) ).
|
740
|
+
|
741
|
+
|
663
742
|
h3. fotolia.de
|
664
743
|
|
744
|
+
Homepage: "http://www.fotolia.de":http://www.fotolia.de
|
745
|
+
|
665
746
|
Bei fotolia.de lädst du deine Fotos hoch. Anschließend mußt du noch Stichworte
|
666
747
|
vergeben und zu jedem Bild angeben, mit welcher Lizenz dieses angeboten werden
|
667
748
|
soll. Erst dann werden deine Bilder begutachtet und entweder angenommen oder
|
668
749
|
abgelehnt.
|
669
750
|
|
670
|
-
Unterstützte Dateitypen:
|
751
|
+
Unterstützte Dateitypen: JPEG, SVG
|
671
752
|
|
672
753
|
Site unterstützt Keywords in IPTC-Header: Ja
|
673
754
|
|
@@ -677,12 +758,14 @@ Site unterstützt Hoch-/Querformat: Nein
|
|
677
758
|
|
678
759
|
h3. zoonar.de
|
679
760
|
|
761
|
+
Homepage: "www.zoonar.de":http://www.zoonar.de/
|
762
|
+
|
680
763
|
Bei zoonar.de wiederum läuft es so, daß du zuerst nur die Bilder hochlädst, dann
|
681
764
|
werden sie begutachtet; angenommen oder abgelehnt und erst wenn sie
|
682
765
|
angenommen wurden, kannst du Schlagworte vergeben. Dies hat natürlich den
|
683
766
|
Vorteil, daß man für abgelehnte Photos erst gar keine Schlagworte vergeben muß
|
684
767
|
(kann).
|
685
|
-
Mein Shop bei Zoonar ist übrigens unter http://www.zoonar.de/shop/thopre zu
|
768
|
+
Mein Shop bei Zoonar ist übrigens unter "Zoonar Shop thopre (Zoonar Shop thopre)":http://www.zoonar.de/shop/thopre zu
|
686
769
|
zu erreichen. Kauft fleißig bei mir ein! ;-)
|
687
770
|
|
688
771
|
Unterstützte Dateitypen: ???
|
@@ -695,12 +778,18 @@ Site unterstützt Hoch-/Querformat: Nein
|
|
695
778
|
|
696
779
|
h3. photocase.de
|
697
780
|
|
781
|
+
Homepage: "www.photocase.de":http://www.photocase.de/
|
782
|
+
|
698
783
|
Bei photocase.de lädst du ebenfalls zuerst deine Photos hoch, diese werden
|
699
784
|
dann entweder angenommen oder abgelehnt. Bei angenommenen Bilder bearbeitest
|
700
785
|
du diese auf deren Seite weiter (eigentlich wie bei zoonar.de). Als nettes
|
701
786
|
Gimmick bei photocase kannst du bei deinen Photos sehen, an welchem Platz
|
702
787
|
sie sich aktuell in der Warteschlage der zu begutachtenden Photos befinden.
|
703
788
|
|
789
|
+
Wie es dann weitergeht, kann ich noch sagen, da es mir bei photocase trotz
|
790
|
+
inzwischen 736 hochgeladenen Photos bis heute nicht gelungen ist, daß auch nur
|
791
|
+
ein einziges angenommen wurde, welches ich dann weiter bearbeiten könnte.
|
792
|
+
|
704
793
|
Unterstützte Dateitypen: ???
|
705
794
|
|
706
795
|
Site unterstützt Keywords in IPTC-Header: ? noch mal nachschauen! TODO:
|
@@ -711,6 +800,15 @@ Site unterstützt Hoch-/Querformat: Nein
|
|
711
800
|
|
712
801
|
h3. dreamstime.de
|
713
802
|
|
803
|
+
Homepage: http://www.fotolia.de TODO:
|
804
|
+
|
805
|
+
Bei dreamstime funktioniert es ähnlich wie bei Zoonar. Man lädt zuerste einfach
|
806
|
+
nur die Bilder hoch und diese werden dann begutachtet und angenommen oder abgelehnt.
|
807
|
+
|
808
|
+
Wie es dann weitergeht, kann ich noch sagen, da es mir bei dreamstime trotz
|
809
|
+
inzwischen 257 hochgeladenen Photos bis heute nicht gelungen ist, daß auch nur
|
810
|
+
ein einziges angenommen wurde, welches ich dann weiter bearbeiten könnte.
|
811
|
+
|
714
812
|
Use the following form to upload your image. Only JPG files, RGB, at least 3 Megapixels, saved at the maximum quality will be accepted. Your image will be added to the queue and as soon as it is reviewed, you will receive an email of acceptance or rejection.
|
715
813
|
|
716
814
|
|
@@ -721,8 +819,7 @@ The system supports automated EXIF/IPTC data retrieval. Use software programs to
|
|
721
819
|
|
722
820
|
The EXIF/IPTC data should contain title, description (subject) and keywords. If no data is added or the system cannot retrieve it, the fields will be left empty. The files will be placed in your "Unfinished files" section, from where you will be able to continue the submission process by uploading a Model Release (if the image contains recognizable faces).
|
723
821
|
|
724
|
-
|
725
|
-
Unterstützte Dateitypen: ???
|
822
|
+
Unterstützte Dateitypen: JPG
|
726
823
|
|
727
824
|
Site unterstützt Keywords in IPTC-Header: Ja
|
728
825
|
|
@@ -732,7 +829,9 @@ Site unterstützt Hoch-/Querformat: ??? TODO:
|
|
732
829
|
|
733
830
|
h3. bigstockphoto.com
|
734
831
|
|
735
|
-
|
832
|
+
Homepage: http://www.fotolia.de TODO:
|
833
|
+
|
834
|
+
Bei Bigstockphoto lädst du auch zuerst deinen Photos hoch. Eine direkte
|
736
835
|
Übernahme der Keywords scheint bei mir nicht geklappt zu haben. Das muß
|
737
836
|
ich noch einmal überprüfen. TODO:
|
738
837
|
|
@@ -751,9 +850,19 @@ Außerdem will diese Site zwingend auch eine Bildbeschreibung haben.
|
|
751
850
|
|
752
851
|
Diese Site ist funktionsfähig (bis auf diese Sprachproblematik), ich persönlich
|
753
852
|
werde die bei mir aber erstmal deaktivieren. U. a. auch weil es mir zu aufwendig
|
754
|
-
ist, auch noch englische Keywords auszusuchen
|
853
|
+
ist, auch noch englische Keywords auszusuchen und ein Beschreibung zu
|
854
|
+
jedem Photo zu schreiben.
|
855
|
+
|
755
856
|
Eine andere Möglichkeit, die mir hier noch einfällt, wäre eine automatische
|
756
857
|
Übersetzung der Keywords.
|
858
|
+
Die automatische Übersetzung baue ich gerade ein - dies wird in einem
|
859
|
+
der nächsten Releases möglich sein. Du hast dann eine Textdatei, die
|
860
|
+
du mit jeweils dem deutschen Stichwort und der Übersetzung ins Englische (oder später noch weitere Sprachen) versorgst. Aus dieser Datei wird dann die
|
861
|
+
Übersetzung ermittelt. Da muß man übrigens aufpassen, weil manche Stichworte mehrdeuting sein können (z. B. 'rasen', je nachdem, ob es bei einem Bild
|
862
|
+
aus dem eigenen Garten oder einem Bild einer Autobahn erscheint). Hier
|
863
|
+
werde ich prüfen, ob gewisse andere, anzugebende, Stichworte ebenfalls
|
864
|
+
für das Bild vergeben wurden ( z.B. "Blumen" oder "Auto") und dann das
|
865
|
+
passende englische Keyword auswählen.
|
757
866
|
|
758
867
|
Unterstützte Dateitypen: ???
|
759
868
|
|
@@ -763,6 +872,34 @@ Site unterstützt Hoch-/Querformat: ??? TODO:
|
|
763
872
|
|
764
873
|
Übertragen der Keywords funktoniert: ???
|
765
874
|
|
875
|
+
h3. Panthermedia
|
876
|
+
|
877
|
+
Homepage: "www.panthermedia.net":http://www.panthermedia.net/
|
878
|
+
|
879
|
+
Bei Pantermedia lädst du deine Bilder per ftp hoch. Vor der Begutachtung mußt
|
880
|
+
du in deinem sogenannten ftp-Bereich bei Panthermedia zu jedem Bild noch diverse
|
881
|
+
Angaben in einem Formula ergänzen.
|
882
|
+
Leider auch wieder vorab, so daß die Arbeit ggf. umsonst war, falls das
|
883
|
+
Bild nicht angenommen wird. Ich finde, da sollte auch wieder eher z. B. an
|
884
|
+
Zoonar orientieren und diese Daten erst anfordern, falls ein Bild angenommen
|
885
|
+
wird - so wie es jetzt ist, klaut man wieder die Zeit des Users/Fotografen.
|
886
|
+
|
887
|
+
Folgendes schreiben sie:
|
888
|
+
|
889
|
+
Wichtig:
|
890
|
+
- Umlaute und Sonderzeichen im Dateinamen vermeiden
|
891
|
+
- Bitte nur JPG-Dateien (max. Größe: 12 MB) hochladen
|
892
|
+
- Bilder im FTP-Ordner nach spätestens 7 Tagen bearbeiten/entfernen
|
893
|
+
- Ihr verfügbarer FTP-Speicher: 150 MB (bitte nicht überschreiten)
|
894
|
+
- Bitte keine Verzeichnisse im FTP-Ordner anlegen
|
895
|
+
Unterstützte Dateitypen: JPG, JPEG
|
896
|
+
|
897
|
+
Site unterstützt Keywords in IPTC-Header: Ja
|
898
|
+
|
899
|
+
Site unterstützt Hoch-/Querformat: ??? TODO:
|
900
|
+
|
901
|
+
Übertragen der Keywords funktoniert: Ja
|
902
|
+
|
766
903
|
h2. Paralleles Hochladen zu mehreren Sites gleichzeitig
|
767
904
|
|
768
905
|
Ich habe begonnen, eine Methode zu schreiben, die es ermöglicht, Bilder zu allen
|
@@ -776,7 +913,7 @@ Begründung: Es wäre zwar wahrscheinlich möglich, in der gleichen Zeit ca. 5 m
|
|
776
913
|
oder mehr Bilder gleichzeitig hochzuladen. Allerdings ist es damit ja nicht getan,
|
777
914
|
weil fast auf jeder Site noch einiges an Nachbearbeitung für jedes Bild nötig
|
778
915
|
ist. Bei meiner jetzigen Situation habe ich z.B. bei fotolia noch jede Menge
|
779
|
-
Photos in der Warteschlange, die ich mit Stichworten (als das
|
916
|
+
Photos in der Warteschlange, die ich mit Stichworten (als das Verschlagworten
|
780
917
|
mit diesem Programm noch nicht automatisch erledigt wurde), und Kategorien
|
781
918
|
versehen muß. Auch bei Photocase habe ich eine Warteschlagen von einigen Bildern,
|
782
919
|
die dort bestätigt oder abgelehnt werden müssen. Diese beiden Sachen werden um
|
@@ -817,8 +954,8 @@ verschieben und beim nächsten Senden wieder uploaden
|
|
817
954
|
|
818
955
|
h2. Timeout beim Senden eines Files
|
819
956
|
|
820
|
-
Ich habe ein Timeout von 10
|
821
|
-
heißt, falls eine Datei nach 10
|
957
|
+
Ich habe ein Timeout von 10 Minuten für das Übertragen einer Datei eingebaut. Das
|
958
|
+
heißt, falls eine Datei nach 10 Minuten immer noch nicht fertig übertragen wurde,
|
822
959
|
führt dies zu einem Abbruch der Verarbeitung (für diese Datei). Dies geschah,
|
823
960
|
um bei Problemen bei einer einzelnen Site nicht auch noch die anderen Übertragungen
|
824
961
|
zu behindern. Bei meiner Konfiguration dauerten auch die längsten Uploads nicht
|
@@ -832,6 +969,83 @@ Wenn du nicht davor zurückschreckst, den Programmcode selbst zu ändern, kannst
|
|
832
969
|
du diesen Wert auch in der Datei bin/multistockphoto (nach 'timeout' suchen)
|
833
970
|
selbst ändern.
|
834
971
|
|
972
|
+
|
973
|
+
h2. Neue Site zum Senden
|
974
|
+
|
975
|
+
Wenn ich eine neue Site aufnehme und alte Photos, die bereits an andere Sites
|
976
|
+
gesendet wurden, auch an diese neue Site senden will, kann ich theoretisch
|
977
|
+
alle Dateien aus dem 'done' Ordner wieder in den 'upload' Ordner verschieben.
|
978
|
+
Dort wird dann auch im Laufe der Zeit die alten Photos an die neue Site gesendet.
|
979
|
+
|
980
|
+
Da es mir jedoch zu unuebersichtlich ist, die alten Dateien wieder komplett drin
|
981
|
+
zu haben, weil ich dann schlech überblicken kann, wo ich noch Tags ergänzen muß,
|
982
|
+
habe ich mir ein kleines Ruby-Skript geschrieben.
|
983
|
+
|
984
|
+
<pre>require 'rubygems'
|
985
|
+
require 'multistockphoto'
|
986
|
+
require 'fileutils'
|
987
|
+
include FileUtils
|
988
|
+
|
989
|
+
ROT_PREFIX = '_rot'
|
990
|
+
PICTURE_FILES = /(.PNG|.JPG|.JPEG|.GIF|.EPS|.AI|.PSD|.PDF|.TIF|.TIFF)$/
|
991
|
+
|
992
|
+
# erzeugt Dateiname einer tags Datei zu einer uebergebenen Photodatei,
|
993
|
+
# egal, ob tags-Datei wirlich existiert oder nicht
|
994
|
+
def tagsfilename(picturefilename)
|
995
|
+
ext = File.extname(picturefilename)
|
996
|
+
tagsfile = picturefilename.sub(ext,".tags")
|
997
|
+
return tagsfile
|
998
|
+
end
|
999
|
+
|
1000
|
+
# Test, ob zu einer Photodatei eine tags-Datei existiert
|
1001
|
+
def tagsfile?(picturefilename)
|
1002
|
+
return File.exist?(tagsfilename(picturefilename))
|
1003
|
+
end
|
1004
|
+
|
1005
|
+
def pick_files(n)
|
1006
|
+
list = []
|
1007
|
+
count = 0
|
1008
|
+
allfiles = Dir.glob(File.join('done','*'))
|
1009
|
+
allfiles.each {|filename|
|
1010
|
+
next if File.basename(filename)[0,4] == ROT_PREFIX
|
1011
|
+
if filename.upcase =~ PICTURE_FILES
|
1012
|
+
list << filename
|
1013
|
+
end
|
1014
|
+
}
|
1015
|
+
while count < n do
|
1016
|
+
filename = list[rand(list.size)]
|
1017
|
+
photo = Photo.new(filename)
|
1018
|
+
puts filename
|
1019
|
+
puts "cp #{filename} upload/#{File.basename(filename)}"
|
1020
|
+
cp(filename,"upload/"+File.basename(filename))
|
1021
|
+
if tagsfile?(filename)
|
1022
|
+
puts "tags-file existiert auch"
|
1023
|
+
puts "cp #{tagsfilename(filename)} upload/#{File.basename(tagsfilename(filename))}"
|
1024
|
+
cp(tagsfilename(filename),"upload/"+File.basename(tagsfilename(filename)))
|
1025
|
+
end
|
1026
|
+
count += 1
|
1027
|
+
end
|
1028
|
+
end
|
1029
|
+
|
1030
|
+
pick_files(2)
|
1031
|
+
</pre>
|
1032
|
+
|
1033
|
+
Dieses Skript kopiert aus dem 'done' Ordner jeweils ein paar zufällig ausgewählte
|
1034
|
+
Dateien in den
|
1035
|
+
Upload-Ordner, wo sie entweder auch an die neue Site gesendet oder mit 'purge-done'
|
1036
|
+
nach dem Upload wieder in den done-Ordner verschoben werden.
|
1037
|
+
|
1038
|
+
Die Zahl im 'pick_files()' Aufruf am Schluß gibt die Anzahl der Files an (hier 2).
|
1039
|
+
Diese Zahl kann je nach persönlichen Vorlieben variiert werden.
|
1040
|
+
|
1041
|
+
Dies hat den Vorteil, daß nicht alle Photos auf einmal wieder im upload-Ordner
|
1042
|
+
erscheinen, sondern nach und nach.
|
1043
|
+
|
1044
|
+
Wer diesen Vorgang automatisieren will, kann einen Crontab-Eintrag (Linux/Unix)
|
1045
|
+
folgender Art vornehmen:
|
1046
|
+
|
1047
|
+
<pre>0 12 * * * (cd /home/tp/multistockphoto; /usr/local/bin/ruby dejavu.rb)</pre>
|
1048
|
+
|
835
1049
|
h2. Forum
|
836
1050
|
|
837
1051
|
"http://groups.google.com/group/multistockphoto":http://groups.google.com/group/multistockphoto
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multistockphoto
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas Preymesser
|
@@ -9,10 +9,19 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-
|
12
|
+
date: 2008-12-30 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
|
-
dependencies:
|
15
|
-
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: hoe
|
17
|
+
type: :development
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 1.8.0
|
24
|
+
version:
|
16
25
|
description: Upload your photos to multiple stock phote sites
|
17
26
|
email:
|
18
27
|
- thopre@gmail.com
|
@@ -55,6 +64,7 @@ files:
|
|
55
64
|
- lib/multistockphoto/site_photocase.rb
|
56
65
|
- lib/multistockphoto/site_dreamstime.rb
|
57
66
|
- lib/multistockphoto/site_bigstockphoto.rb
|
67
|
+
- lib/multistockphoto/site_panthermedia.rb
|
58
68
|
- lib/multistockphoto/photo.rb
|
59
69
|
- lib/multistockphoto/upload_exception.rb
|
60
70
|
- script/console
|
@@ -103,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
103
113
|
requirements: []
|
104
114
|
|
105
115
|
rubyforge_project: multistockphoto
|
106
|
-
rubygems_version: 1.
|
116
|
+
rubygems_version: 1.3.1
|
107
117
|
signing_key:
|
108
118
|
specification_version: 2
|
109
119
|
summary: Upload your photos to multiple stock phote sites
|