Entropia:Uploaden: Unterschied zwischen den Versionen

aus dem Wiki des Entropia e.V., CCC Karlsruhe
Keine Bearbeitungszusammenfassung
(outdated info gekürzt)
 
(10 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 1: Zeile 1:
Hier ein Skript, um eine Datei ins Wiki zu tun.
Es gibt drei Arten, Files in das Wiki zu laden:


<pre>
* Manuell hochladen über [[Spezial:Hochladen]]
#!/usr/bin/perl
* [[#API-Upload|Upload über die Mediawiki-API]]
# Upload a file to a recent MediaWiki using the API.
* Batch-Import via ImportImages.php


use strict;
Für Massen-Uploads ist es am besten sich um Zugangsdaten für den ressourcenschonenden Batch-Import zu kümmern.
use MediaWiki::API 0.39;


my $wikiuser = $ARGV[0];
my $wikipass = $ARGV[1];
my $file    = $ARGV[2];
my $comment  = $ARGV[3];


# usage
== API-Upload ==
if (!defined($comment)) {
[https://raw.githubusercontent.com/neingeist/dirty-helpers/master/wiki-upload wiki-upload] ist ein Skript, um Dateien ins Wiki zu tun:
  print "Usage: $0 <wikiuser> <wikipass> <file> <comment>\n";
  exit;
}
 
# log in to the wiki
my $mw = MediaWiki::API->new();
$mw->{config}->{api_url} = 'https://entropia.de/wiki/api.php';
$mw->login( { lgname => $wikiuser, lgpassword => $wikipass } )
  || die $mw->{error}->{code} . ': ' . $mw->{error}->{details};
 
# upload file
open FILE, $file or die $!;
binmode FILE;
my ($buffer, $data);
while ( read(FILE, $buffer, 65536) )  {
  $data .= $buffer;
}
close(FILE);
 
$mw->upload( { title => $file,
              summary => $comment,
              data => $data } ) || die $mw->{error}->{code} . ': ' . $mw->{error}->{details};


<pre>
$ ./wiki-upload -d '[[Category:Cats]]' Test-kitten*
Uploading Test-kitten2.jpg ...
  Success
Uploading Test-kitten5.jpg ...
  Warning
  exists: Test-kitten5.jpg
Uploading Test-kitten6.jpg ...
  Warning
  was-deleted: Test-kitten6.jpg
  duplicate-archive: Test-kitten6.jpg
Uploading Test-kitten7.jpg ...
  Warning
  exists: Test-kitten7.jpg
</pre>
</pre>

Aktuelle Version vom 23. Juni 2023, 01:05 Uhr

Es gibt drei Arten, Files in das Wiki zu laden:

Für Massen-Uploads ist es am besten sich um Zugangsdaten für den ressourcenschonenden Batch-Import zu kümmern.


API-Upload

wiki-upload ist ein Skript, um Dateien ins Wiki zu tun:

$ ./wiki-upload -d '[[Category:Cats]]' Test-kitten*
Uploading Test-kitten2.jpg ... 
  Success
Uploading Test-kitten5.jpg ... 
  Warning
  exists: Test-kitten5.jpg
Uploading Test-kitten6.jpg ... 
  Warning
  was-deleted: Test-kitten6.jpg
  duplicate-archive: Test-kitten6.jpg
Uploading Test-kitten7.jpg ... 
  Warning
  exists: Test-kitten7.jpg