Wikipedia:Botcafé/Archief/2007-01

Uit Wikipedia, de vrije encyclopedie

onderaanplaatsten {{beg}}[bewerken | brontekst bewerken]

Als een pagina een beginnertje is moet dit volgens de regels van de sjablonen de {{beg}} onderaan staan, maar in veel pagina's is dit niet het geval en staat dit bovenaan, kan er iemand een bot schrijven die dit kan aanpassen? Liefst ook één die ook rekening houd met {{beg|xxx}} met als xxx een willekeurige tekst. Ik zit zelf nog niet zo ver in het leren over de programmeertaal om dit zelf te kunnen. De bot moet alleen maar op NL werken.

Te veel edits voor te weinig voordeel imnsho. valhallasw 1 jan 2007 00:56 (CET)[reageer]
Dan zal ik wachten tot ik de programmeertaal wat beter ken en ik een bobitje heb verkregen. --Warddr 1 jan 2007 02:13 (CET)[reageer]
Dat is het punt niet. {{beg}}-jes worden na 2 weken opgeruimd. Om op dat soort artikelen botbewerkingen uit te voeren voor iets relatief onzinnigs, lijkt me niet verstandig. Het is veel beter om de editors die {{beg}} bovenaan de pagina zetten op hun gedrag aan te spreken. valhallasw 1 jan 2007 11:55 (CET)[reageer]
worden opgeruimd? hoe bedoel je? alleen begje eraf of hele artikel weg? Crazyphunk 1 jan 2007 12:24 (CET)[reageer]
Dat klopt niet. Veel beginnetjes blijven jaren bestaan. Beginnetjes worden niet verwijderd. Londenp zeg't maar 1 jan 2007 13:53 (CET)[reageer]

Trager lopen bot[bewerken | brontekst bewerken]

Hoe kan ik instellen dat mijn bot als die Semi-automatisch loopt bv met solve_disambiguation.py toch maar om de 30 sec een bewerking kan doen? Ik heb al geprobeerd

minthrottle = 30
maxthrottle = 60
put_throttle = 30 (suggestie op mijn overlegpagina van  Annabel)

in de config te veranderen, maar nog werkt dit niet op semi-automatisch. En nog iets: als ik AWB gebruik, mag ik dan ook maar die 2 bewerkingen/minuut doen? --Warddr 2 jan 2007 13:01 (CET)[reageer]

Ongeacht de methode geldt een maximum van twee bewerkingen per minuut zolang er geen botstatus is verkregen, dus ook voor AWB. Als je solve_disambiguation.py start kun je als optie putthrottle:30 meegeven, dit doe je met het commando solve_disambiguation.py -putthrottle:30 Doorverwijspagina. --Erwin85 2 jan 2007 14:41 (CET)[reageer]
FYI: Ward's vraag draait erom dat je -putthrotle niet telkens in de commandolijn dient op te geven (of vergis ik me?). Annabel(overleg) 2 jan 2007 18:05 (CET)[reageer]
Neen, je vergist je zeker niet!--Warddr 2 jan 2007 18:14 (CET)[reageer]
Hmmm.. Bij solve_disambiguation.py heb ik bewust de throttling weggehaald, omdat het 'highly interactive' is - terwijl een interwiki-bot loopt, kun je rustig iets anders doen, maar als je solve_disambiguation vertraagt, vertraag je daarmee de gebruiker. Voordat de bot bestond, kwam het wel voor dat ik tot 5 edits per minuut met de hand kwam tijdens het disambigueren... - André Engels 5 jan 2007 00:34 (CET)[reageer]

Hebben jullie ook dat AWB arc: niet bij de interwiki-links wil laten staan, maar boven de categorie zet? voor een voorbeeld: cotroleer artikel Afrika. Kan je hier iets aan doen, of kan ik dit ergens doorgeven zodat ze hier in de volgende versie rekening mee houden? --Warddr 2 jan 2007 20:28 (CET)[reageer]

Heb ik ook ja, net even geprobeerd Crazyphunk 2 jan 2007 20:31 (CET)[reageer]
Ik wijzig zoiets manueel in het tekstbewerkingsvenster. Annabel(overleg) 2 jan 2007 20:32 (CET)[reageer]
bij lij: is het hetzelfde heb ik gemerkt bij basketbal--Warddr 2 jan 2007 20:41 (CET)[reageer]
Hoewel ik AWB niet ken, is dit dusdanig vergelijkbaar met een probleem dat ik met pywikipedia wel heb gehad, dat ik wel kan raden wat er aan de hand is: AWB heeft blijkbaar een lijst van bestaande talen, en herkent alles van de vorm [[xx:blabla]] als een interwiki dan en slechts dan als xx: in de lijst van bestaande talen staat. Blijkbaar ontbreken arc: en lij: in die lijst. En dus ziet het de interwiki-links als een stuk 'gewone' tekst, die dus boven de categories en interwiki's moet. - André Engels 5 jan 2007 00:48 (CET)[reageer]

replace.py vanuit een batch[bewerken | brontekst bewerken]

Hoe kan ik vanuit een batch file 'moeilijke' tekens specificeren. Voorbeeld:

replace.py -page:Kalamáta "bla bla bla" "bla bla"

geeft geen probleem als ik deze als commandline opgeef en de á intype door middel van de juiste ALT toetscombinatie. Alleen nu wil ik exact dezelfde opdracht vanuit een .bat file uitvoeren maar dan gaat het mis als ik de .bat opstart. Het teken wordt niet juist afgebeeld door msDos. Was te verwachten, maar weet iemand hoe dit op te lossen binnen een batch bestand? Michiel1972 5 jan 2007 20:02 (CET)[reageer]

Wellicht kan je je regexp vanuit een Unicode bestand inlezen? Probeer anders eens .cmd (gebruikt cmd.exe dat wel unicode ondersteunt in plaats van command.com). Siebrand (overleg) 5 jan 2007 20:10 (CET)[reageer]
Als het goed is kan je ook Kalam%E1ta gebruiken. Zoek daarvoor even met charmap het teken op. (dit helpt natuurlijk niet als je het in je regexp nodig hebt, maar voor paginanamen is het iets) valhallasw 5 jan 2007 20:12 (CET)[reageer]
Hmm, nu twijfel ik. Het volgende script, uitgevoerd vanuit test.bat geeft mij onder Windows Xp ook aan dat cmd.exe wordt gebruikt:
echo %COMSPEC%
pause

Siebrand (overleg) 5 jan 2007 20:14 (CET)[reageer]

Gevonden, het moet als volgt in een batch file (die dubbele % is nodig):

replace.py -page:Kalam%%E1ta "bla bla bla" "bla bla"

Dank. Nu ook coordinaten voor plaatsnamen met dergelijke tekens.:) Michiel1972 7 jan 2007 21:33 (CET)[reageer]

Nieuwe lijnen in zoek-en vervangbijdragen[bewerken | brontekst bewerken]

Ik ben op zoek naar hoe je een nieuw-lijn-teken kunt opgeven in de strings voor zoeken en vervangen (met behulp van de pywikipedia-software). De bedoeling is bijvoorbeeld om twee tabelsluitcodes ("|}") die op twee lijnen staan te vervangen door "<nowiki>{{)}}"</nowiki> op het WikiWoordenboek. Annabel(overleg) 5 jan 2007 08:50 (CET)[reageer]

Ik vermoed dat je dan \n moet gebruiken, probeer dat eens. - André Engels 5 jan 2007 16:57 (CET)[reageer]
Dat wil niet lukken. 🙁 Annabel(overleg) 5 jan 2007 18:42 (CET)[reageer]
Ik snap je voorbeeld niet. Wat betekent "{{)}}"? Michiel1972 5 jan 2007 20:04 (CET)[reageer]
wikt:Sjabloon:(. Dit sjabloon geeft het einde aan van een reeks vertalingen op het wikiwoordenboek. Annabel(overleg) 5 jan 2007 20:19 (CET)[reageer]
Als je een gedetaileerder voorbeeld hebt (met een voor en na -situatie) zou ik het graag zien. Ik denk dat je met regex wel zoiets kan vervangen. Zoiets als"([\s\S]*?)\|}[\s\S]*?\|}" "\1{{)}}" . Michiel1972 5 jan 2007 20:53 (CET)[reageer]
Aan die regexps geraak ik moeilijk aan uit. Is er daar ergens een goede handleiding voor (die kan gelezen worden door python-beginners). De uiteindelijke bedoeling is een wijziging zoals in [1]. De derde verandering in die pagina (invoeging van {{)}}) is het hier gegeven voorbeeld. Hopelijk verduidelijkt dat een beetje de kwestie. Annabel(overleg) 5 jan 2007 23:34 (CET)[reageer]
Dit verschil bedoel je? Ik denk dat dat gaat lukken met

replace.py -ref:.... (of page:...) -regexp "([\s\S]*?)\|}[\s\S]*?\|}" "\1{{)}}" .

of in mensentaal: zoek naar een begintekst gevolgd door | } en nog eens tekst, indien aanwezig, gevolgd door |} en vervang dit door de 1e gevonden tekst met dat nieuwe sjabloon.

En https://www.regular-expressions.info/ vond ik een bruikbare site voor iemand die niet niet eerder met regexp heeft gewerkt. Nu vind ik het super om te weten, je kan er hele infoboxen van de.wikipedia mee extracten :) Groet Michiel1972 8 jan 2007 00:25 (CET)[reageer]
Het is me gelukt. Ik had -regex moeten opgeven, overal de nodige backslashes toevoegen en \r\n ipv \n\r (of zo) toepassen. Bedankt voor de hulp. Annabel(overleg) 9 jan 2007 13:25 (CET)[reageer]

Sjabloon:Border is een leuke toepassing maar er komt een lelijke extra regel bij wanneer je het toepast, zie bv. A Coruña (stad), de vlag in de infobox. Iemand een idee om dit netter te maken? Michiel1972 8 jan 2007 00:14 (CET)[reageer]

Hallo Michiel. Het heeft te maken met die "display:table-cell;" waardoor de ingevoegde afbeelding zich in een nieuwe cel in een nieuwe rij gaat plaatsen. Door deze gewoon weg te doen, is het probleem van de nieuwe lijn opgelost, maar werkt het op de ene of ander nog niet. Dit vermits de rand onderaan dan verdwijnt. Christophe 13 jan 2007 20:02 (CET)[reageer]

Inefficientie interwiki.py oplossen[bewerken | brontekst bewerken]

Hoi allemaal, Ik heb een vraag. Is er hier iemand wel eens bezig geweest te neuzelen of te editten in de code van interwiki.py of het pywikipedia-platform in het algemeen? Ik loop er namelijk tegenaan dat mijn bot-runs ontzettend lang duren door dat complete iw-netwerken worden geïnventariseerd waarbij al heel vroeg duidelijk is dat er sprake is van een iw-conflict. Is er iemand die mij kan helpen om te zorgen dat de bot kan detecteren of er sprake is van zo'n conflict, en dan de verdere inventarisatie van die site kan afbreken? Ik kan de bot wel een beetje lezen, maar zelf geen python coden, en ik raak nog een beetje de weg kwijt in de code. Thijs! 14 jan 2007 17:08 (CET)[reageer]

Je wilt dus stoppen als 'NOTE: Synoniem (taalkunde): lt:Sinonimas gives duplicate interwiki on same site gl:Sinónimo' wordt getoond? Je kunt natuurlijk zelf op ctrl-c drukken, maar anders:
regel 671:"wikipedia.output(u"NOTE: %s: %s gives duplicate interwiki on same site %s" % (self.originPage.aslink(), page.aslink(True), linkedPage.aslink(True)))
Zet op de volgende regel iets van raise 'Conflicten gevonden' en hij stopt op het moment dat er een dubbele interwiki wordt gevonden. valhallasw 14 jan 2007 17:26 (CET)[reageer]
Ik denk dat Thijs! bedoelt dat de bot gewoon verder moet doen, maar iw-netwerken die al zeker niet eenduidig zijn niet meer verder proberen uitwerken in autonomous-mode. Ik heb wel zo'n patch zien voorbijkomen, maar die was veroorzaakte nog meer problemen, dus werd teruggedraaid. Ik denk dat de pywikipedia-devs er wel mee bezig zijn, maar dat tot nu toe nog niemand er aan toe gekomen is. --Tuvic 14 jan 2007 17:48 (CET)[reageer]
Rob Hooft heeft zoiets toegevoegd op 24 december, maar het een paar uur later weer verwijderd met als reden "it introduced more trouble." Je zou hem kunnen vragen wat precies die 'trouble' was. - André Engels 15 jan 2007 09:41 (CET)[reageer]

start:A werkt niet bij mij[bewerken | brontekst bewerken]

de code "interwiki.py -autonomous -start:Aa" en ook "interwiki.py" "-autonomous" "-start:Aa" werkt niet bij mij, kan iemand mij misschien uitleggen hoe dat komt? Crazyphunk 13 jan 2007 16:14 (CET)[reageer]

Bij mij werkt dit wel, misschien eens kijken dat je de nieuwste versie van interwiki.py hebt.--Warddr 13 jan 2007 17:36 (CET)[reageer]
Bij mij werkte het opgegeven commando ook direct. Annabel(overleg) 13 jan 2007 17:38 (CET)[reageer]
ik zal eens kijken of ik `m kan gaan updaten Crazyphunk 13 jan 2007 18:16 (CET)[reageer]
Dat is goed, denk er wel aan dat we ondertussen al aan "interwiki.py -autonomous -start:Bernard Haitink" zitten. Als het in orde is weet dan even te zeggen hoe je het hebt opgelost.--Warddr 13 jan 2007 18:35 (CET)[reageer]
Vraagje aan CrazyPhunk voor de duidelijkheid: gebruik je die aanhalingstekens ook bij het intypen van het commando? Christophe 13 jan 2007 19:46 (CET)[reageer]
jazeker Crazyphunk 13 jan 2007 19:47 (CET)[reageer]
In dat geval weet ik er niet veel meer over. Christophe 13 jan 2007 19:57 (CET)[reageer]
Die aanhalingstekens moeten er dus niet bij, al werkt de tweede versie die je vermeldt ook. Maar probeer het eens zonder. Werkt het nog niet, zeg dan a.u.b. wat er misgaat (krijg je een foutmelding? Zo ja, welke?) - André Engels 15 jan 2007 13:14 (CET)[reageer]
het werkt dus nog steeds niet en ik krijg nog steeds die foutmelding: ERROR: could not retrieve more pages. Crazyphunk 15 jan 2007 16:25 (CET)[reageer]
Ah, in dat geval: Download een nieuwe versie (1.767 of nieuwer) van wikipedia.py, die is te vinden op http://pywikipediabot.cvs.sourceforge.net/pywikipediabot/pywikipedia/wikipedia.py?view=log. En om te voorkomen dat je vervolgens ergens anders een foutmelding krijgt, ook een nieuwe versie van terminal_interface.py in de directory userinterfaces vanaf http://pywikipediabot.cvs.sourceforge.net/pywikipediabot/pywikipedia/userinterfaces/terminal_interface.py?view=log. Wat er aan de hand is, is dat Speciaal:Allpages recentelijk wat gewijzigd is, en oude versies van de bot deze niet goed meer lezen. - André Engels 16 jan 2007 09:38 (CET)[reageer]
gedaan, maar nu krijg ik dit [2], kan jij mij niet jouw bestanden geven die je hebt van de bot via mail? of kan dat niet? Crazyphunk 16 jan 2007 15:47 (CET)[reageer]
Dan moet je ook nog http://pywikipediabot.cvs.sourceforge.net/pywikipediabot/pywikipedia/wikipediatools.py?view=log downloaden. Had nog niet door dat die er bijgekomen was, bestaat nog slechts 2 dagen. Mailen wil ik ook wel, welk adres? - André Engels 16 jan 2007 15:55 (CET)[reageer]
ik hoop dat het lukt als je de bestanden naar crazyphunk@hetnet.nl stuurt Crazyphunk 16 jan 2007 16:02 (CET)[reageer]
Ah oei. Ik had het antwoord van CrazyPhunk verstaan als zijnde dat hij zeker was dat hij de aanhalingstekens niet gebruikte. Heb blijkbaar mijn eigen vraag verkeerd geïnterpreteerd. Christophe 15 jan 2007 15:22 (CET)[reageer]

Wikipediatalen waar je geen speciale aanvraag moet doen om een interwiki-bot te laten lopen[bewerken | brontekst bewerken]

Kan iemand mij een lijst geven van Talen waarin wikipedia beschikbaar is waar je niets moet aanvragen en gewoon een account moet aanmaken om een interwiki-bot te laten lopen. Desnoods maar 2 bewerkingen/minuut, dan kan ik mijn interwikibot wat efficiënter laten werken. --Warddr 13 jan 2007 17:53 (CET)[reageer]

Je kan even op de gebruikerspagina van mijn bot kijken, Gebruiker:Thijs!bot, daar staat een lijstjes van wikipedia's waar ik zonder bot op werk, doorgaans zonder commentaar. Verder zou je kunnen kijken op welke wikipedia's je het meeste werk laat liggen. Ik doe dat meestal door "python splitwarning.py", zodat hij de log-file opsplitst per taal. Dan in pywikipedia/logs met "ls -larS" of in windows/dos "dir /o:s" kijken welke file het grootste is, dwz waar het meeste werk is blijven liggen. Maak er daar werk van om een bot-status te krijgen, dat scheelt veel meer dan kleine wikipedia's (met 100 artikelen ofzo) te editten. Ondertussen werk ik trouwens op een stuk meer wikipedia's dan op mijn gebruikerspagina staan, als je naar de interwikilinks van Gebruiker:Thijs!bot kijkt, zie je ze (vrijwel) allemaal (ik kan er 1 of 2 gemist hebben). Succes! Thijs! 13 jan 2007 23:23 (CET)[reageer]
Bedankt, zal ik doen, op de grote wikipedia's had ik al een account aangemaakt, maar in het Engels vinden ze WarddrBOT maar niets. Ik ben daar geblockt, ik zal het eens onder een andere naam proberen. Ook zou het helpen als ik hier in het nederlands al een Bobitje kon krijgen, maar de vorige keer (2 weken geleden) toen ik het aanvraag is het mij gewijgerd. Ondertussen heb ik wel al 700+ botedits, wanneer kan ik het terug proberen?--Warddr 14 jan 2007 00:23 (CET)[reageer]
Een andere naam proberen op en-wiki zou ik niet doen. Dat zal alleen maar leiden tot meer blocks. Wat je wel kan doen is de bot-policy daar eens goed doorlezen, de voorwaarden vervullen en dan een verzoek om botstatus doen. Het beleid op en-wiki is heel strikt, en niet geautoriseerde bots worden geblokt. --Tuvic 14 jan 2007 17:48 (CET)[reageer]
Ik ben het er niet mee eens dat kleine wikipedia's editten minder belangrijk is:
  • Per edit is het precies even belangrijk, zo'n kleine Wikipedia heb je gewoon ook minder werk aan
  • Juist kleinere Wikipedia's laten je vaak zonder problemen een bot creëren en gebruiken. Robbot is op (bijna) alle talen geregistreerd, en daar heb ik qua kleine talen alleen bij Ladino de opmerking gekregen hem te registreren. Op es: daarentegen werd ik geblokkeerd wegens 'ongeregistreerde bot' nadat het meer dan 2 jaar lang goed werk had geleverd.
  • Bij kleinere talen is de kans kleiner dat als jij de pagina niet aanpast, een andere botgebruiker dat wel gaat doen.
- André Engels 15 jan 2007 09:50 (CET)[reageer]
Thijs! Bedankt, ik heb in 126 talen dingen gemist dus het zal nog een tijdje duren voor ik ze allemaal heb! Ondertussen heb ik er al 18 toegevoegd. Voor moest je willen weten welke kijk dan bij de interwikilinks van mijn bot! Let wel op, ik heb een paar zeer kleine taaltjes toegevoegd ook!
--Warddr (overleg) 20 jan 2007 15:20 (CET)[reageer]

Handleiding bot[bewerken | brontekst bewerken]

Nergens vind ik hier een handleiding hoe een bot aan te maken. Ik zou er best af en toe eentje zelf willen draaien. Verrekijkerpraatjes?Deze gebruiker doet gewoonlijk heel vervelend tegen trollen! 16 jan 2007 15:22 (CET)[reageer]

zie Help:Gebruik van bots Crazyphunk 16 jan 2007 15:24 (CET)[reageer]

Ah bedankt. Binnenkort zet ik Windows XP er opnieuw op en dan is het wel een optie. Ik zou graag dp's nalopen nl. en links naar pagina's ook, ik zie dat het botmatig idd veel minder typen is. Verrekijkerpraatjes?Deze gebruiker doet gewoonlijk heel vervelend tegen trollen! 16 jan 2007 16:24 (CET)[reageer]

Je hebt vooral geen specifiek besturingssysteem nodig om pywikipediabot te draaien. Het werk ook prima onder Linux of OSX, zolang je maar python hebt geinstalleerd. Siebrand (overleg) 19 jan 2007 16:51 (CET)[reageer]

Wat doe ik fout[bewerken | brontekst bewerken]

Ik heb de software voor de Bot geinstalleerd, maar als ik wil inloggen krijg ik het volgende beeld

Als ik op school hetzelfde doe als thuis, dan doet ie het wel! Perijn Aybara?[Overleg] 17 jan 2007 14:58 (CET)[reageer]

Heb je ook Python wel geïnstalleerd? Thijs! 17 jan 2007 15:42 (CET)[reageer]
Dat heb ik gedaan ja. Perijn Aybara?[Overleg] 17 jan 2007 15:45 (CET)[reageer]
Probeer misschien eens "python login.py", soms helpt het. --Tuvic 17 jan 2007 22:43 (CET)[reageer]
Vogige opmerkingen zijn volgens mij niet juist, je moet naar CMD gaan en dan cd c:\bot\pywikipedia typen, op enter drukken en dan gewoon login.py intypen! Veel succes--Warddr (overleg) 18 jan 2007 07:37 (CET)[reageer]
Dat heb ik ook gedaan (zie afbeelding!
maak de directory naam korter, dus niet c:\bot\pywikipedia maar c:\bot\pybot, dat werkt waarschijnlijk. Michiel1972 19 jan 2007 10:21 (CET)[reageer]

Fout bij solve_disambiguation.py[bewerken | brontekst bewerken]

Ik wou zoals ik al een aantal keer heb gedaan links naar doorverwijspagina's verleggen, maar ik krijg echter dit te zien:

C:\Documents and Settings\Ward>cd c:\bot\pywikipedia


c:\bot\pywikipedia>solve_disambiguation.py Kabinet

Checked for running processes. 1 processes currently running, including the current process.

Getting page [[Kabinet]]

Page does not exist, skipping.

C:\bot\pywikipedia>.

Mijn User_config.py is de volgende:

usernames['wikipedia']['nl']='WarddrBOT'
usernames['wikipedia']['ro']='WarddrBOT'
usernames['wikipedia']['fr']='WarddrBOT'
usernames['wikipedia']['de']='WarddrBOT'
usernames['wikipedia']['bg']='WarddrBOT'
usernames['wikipedia']['ja']='WarddrBOT'
usernames['wikipedia']['es']='WarddrBOT'
usernames['wikipedia']['mh']='WarddrBOT'
usernames['wikipedia']['lbe']='WarddrBOT'
usernames['wikipedia']['ve']='WarddrBOT'
usernames['wikipedia']['bxr']='WarddrBOT'
mylang='nl'
ring_bell = False
put_throttle = 30

Weet er iemand waar de fout zit? Een interwiki bot werkt nog wel.--Warddr (overleg) 18 jan 2007 17:11 (CET)[reageer]

Even updaten of zelf je source hacken. De html-code van de geschiedenistab is veranderd. valhallasw 18 jan 2007 18:33 (CET)[reageer]


Ik kom er niet meer uit, welk sjabloonwonder helpt me. Ik was van plan om een geautomatiseerde kaart bij alle Poolse steden te plaatsen, omdat de coordinaten bekend zijn leek me dat niet al te moeilijk. Aanpak: een lookup lijst met de coordinaten {{Coordinaten Poolse steden/test}}. Hier staat bij de opgezochte artikelnaam een sjabloonlink {{kaart Poolse stad}} die de coordinaten, van b.v. Elbląg, omzet in een kaart. Dat werkt, ik kan dat sjabloon los wel gebruiken ( bv {kaart Poolse stad|54|10|0|N|19|24|0|E|type:city_region:PL}), zie Gebruiker:Michiel1972/klad). Maar als ik nu hetzelfde probeer met {{Coordinaten Poolse steden/test|coordlink=Elbląg} zie ik niets. Tevens verdwijnt de infobox van de pagina (probeer gerust op mijn klad). (Uiteindelijk doel is de kaart te integreren in die infobox). Zodra ik echter de inhoud op {kaart Poolse stad} vervang door iets simpels lukt het wel weer.. Michiel1972 19 jan 2007 10:18 (CET)[reageer]

Ik heb even geprobeerd, en het werkt inderdaad niet. Wat wel is, is dat je heel dicht bij de template-include-maximum-waarde zit: alleen het sjabloon op een pagina werkt misschien nog (alhoewel er niet meer uitkomt dan "#switch: test1", indien je de volledige inhoud van het coordinaten-sjabloon laat staan), maar van zodra er een ander sjabloon op de pagina staat kilt de parser het uitwerken van sjabloon, wegens te groot. Ik heb nu even de boel leeggehaald, en dan werkt het.
Probleem is volgens mij dat sjablonen niet echt mogen gebruikt worden als database: het sjabloon {{Coordinaten Poolse steden/test}} is gewoonweg véél te groot. Dat zie je trouwens ook als je een edit maakt: je moet 10 seconden wachten voor je resultaat krijgt. Een tijdje geleden is zo de wiki serieus vertraagt, door een sjabloon op es-wiki dat 20 seconden nodig had.
Wat je misschien kan proberen, is het mega-sjabloon op te delen in verschillende kleintjes, per letter één of zo. Dan geraak je waarschijnlijk niet aan de limiet, opgelegd door de software.
(Om de pre-include-size waarschuwingen te zien, moet je in de broncode van de gegenereerde html kijken: daar staan dan waarschuwingen tussen haakjes, als de include-size erover is). --Tuvic 19 jan 2007 23:23 (CET)[reageer]
Ik vroeg mij af of het niet beter is om de coördinaten te plaatsen op de artikels van de Poolse steden zelf. Zo hoef je geen databank aan te leggen én bundel je alle gegevens van elke stad op dezelfde plaats. Groeten, Christophe 20 jan 2007 00:28 (CET)[reageer]
Tja, zit ik ook over over te denken, maar zo makkelijk te botten is dat ook weer niet. Maar het verhelpt dergelijke problemen wel, daar ben ik van overtuigd. Michiel1972 20 jan 2007 00:35 (CET)[reageer]
Je kan het probleem ook op een andere manier oplossen. Ik ben eerder voorstander om alle gegevens bij elkaar te houden in het artikel, maar wil je hetvolgende niet onthouden. Volgens mij heeft je probleem eerder te maken met de werking van de software. Je voegt sjablonen toe in een switch, waardoor de software, denk ik, eerst alle sjablonen gaat invoegen voordat deze de switch bekijkt. Dus, zoals Tuvic ook al zei, is het niet aan te raden om sjablonen als databank te gebruiken. Je kan beter de accolades van alle sjablonen eruit laten en op een andere plaats zetten en dan moet het volgens mij wel lukken. Groeten, Christophe 20 jan 2007 00:37 (CET)[reageer]
Ik ga 890 x de sjablonen plaatsen (die ik al had berekend) in het veld kaart=, want dat werkt wel. Dagje werk (helaas). Michiel1972 20 jan 2007 01:14 (CET)[reageer]
dat doet mijn bot toch wat sneller dan ikzelf. Michiel1972 20 jan 2007 11:07 (CET)[reageer]

Separaat kopje[bewerken | brontekst bewerken]

@Valhallasw: Hij beweert hier iets wat totaal niet klopt, verder negeert ie enig overleg en vragen... En gata hier doodleuk even door alle afspraken heen zijn zin doordraven.... Natuurlijk bemoei ik me er dan mee... Dolfy 25 jan 2007 10:09 (CET)[reageer]

Hij beweert niets wat totaal niet klopt - dwz, ík kan het niet vinden. Verder gaat het hier om de technische kant, de rest van de discussie mag lekker bij 's-Hertogenbosch. valhallasw 25 jan 2007 20:47 (CET)[reageer]

Aanpassen inhoud sjabloon "cat"[bewerken | brontekst bewerken]

Hoi,

Is er ook een botfile waarmee je de inhoud van het sjabloon "cat" kunt aanpassen? In het bijzonder ben ik op zoek naar de oplossing voor in het geval dat er een categorie gewist is, en je de broodkruimelnavigatie moet aanpassen.

Groetjes, Sietske Reageren? 14 jan 2007 13:52 (CET)[reageer]

Als je het sjabloon "cat" wilt aanpassen, dan ga je naar [3], dunkt me. Maar dat weet jij ook wel, dus dat zul je niet bedoelen. Wat je wel bedoelt, weet ik niet, en of er iets voor bestaat kan ik dus ook niet zeggen. - André Engels 15 jan 2007 09:44 (CET)[reageer]
Ik had het inderdaad duidelijker kunnen vertellen. Een nieuwe poging: Als voorbeeldje de Categorie:Gras. Je ziet daar een broodkruimelnavigatie in staan. Stel nou dat er om wat voor reden dan ook besloten wordt om de categorie "exacte wetenschap" te hernoemen naar de categorie "exacte wetenschappen". In de tekst van het categoriesjabloon op de categorie "Gras" klopt dan de broodkruimelnavigatie niet meer, net zoals op een heleboel andere categorieën ook niet meer.
Hoe kun je je botje aansturen om te zorgen dat hij op alle categoriepagina's, die naar deze foute categorie doorverwijzen middels broodkruimelnavigatie, de tekst "Categorie:Exacte wetenschap|Exacte wetenschap" verandert in Categorie:Exacte wetenschappen|Exacte wetenschappen? Sietske Reageren? 15 jan 2007 10:19 (CET)[reageer]
Misschien kan je
replace.py -file:wijz.txt ":Categorie:Wetenschap|Wetenschap" ":Categorie:Wetenschappen|Wetenschap" (waarin wijz.txt een bestandje is waar zich de links bevinden naar Categorie:Wetenschap (ik maak dat altijd met AWB)
proberen. Je kan het geheel ook met AWB doen waarbij je ":Categorie:Wetenschap|Wetenschap" in zoek en ":Categorie:Wetenschappen|Wetenschap" als vervangtekst meegeeft. Annabel(overleg) 15 jan 2007 11:09 (CET)[reageer]
Ik zou hier "replace.py -ref:Categorie:Exacte_wetenschap" gebruiken. Dan hoef je niet, zoals bij -file, eerst zelf de lijst te vormen en op te slaan. - André Engels 15 jan 2007 13:13 (CET)[reageer]
Ah ja... Maar waarom het op de makkelijke wijze doen als het ook moeilijk kan 🙂 Annabel(overleg) 15 jan 2007 14:20 (CET)[reageer]
Bedankt, ik ga het eens testen! Sietske Reageren? 26 jan 2007 14:09 (CET)[reageer]

Solve_Disambiguation.py vraagje[bewerken | brontekst bewerken]

Op deze pagina: Overleg:Zwolle (doorverwijspagina)#voorstel wordt een nieuwe dp-constructie voorgesteld, die volgens mij tegemoet komt aan alle bezwaren van zowel tegenstanders als voorstanders van dp-constructies. Volgens mij zou dat inderdaad moeten werken, maar ik weet niet hoe. Welke syntax moet je gebruiker om bijvoorbeeld 's Hertogenbosch te disambigueren, waarbij de doorverwijslinken staan op de 's Hertogenbosch (doorverwijspagina). Merci voor een antwoord. Londenp zeg't maar 20 jan 2007 07:44 (CET)[reageer]

Bedoel je dat je alle links naar "'s Hertogenbosch (doorverwijspagina)" wilt wijzigen? In dat geval gebruik je volgens mij gewoon solve_disambiguation.py 's Hertogenbosch (doorverwijspagina). Christophe 20 jan 2007 13:10 (CET)[reageer]
Nee dat bedoel ik niet. Ik bedoel dat ik 's Hertogenbosch zou willen disambigueren, maar dat de keuzemogelijkheden op 's Hertogenbosch (doorverwijspagina) staan. Groet Londenp zeg't maar 21 jan 2007 15:57 (CET)[reageer]
solve_disambiguation.py 's Hertogenbosch -primary - André Engels 21 jan 2007 20:49 (CET)[reageer]

Ik heb het geprobeerd op Fribourg. Fribourg is nu een redirect naar Fribourg (stad) en de oude dp Fribourg het nu Fribourg (doorverwijspagina). Volgende output krijg ik:

 C:\nlpy>python solve_disambiguation.py Fribourg -primary
 Checked for running processes. 1 processes currently running, including the current process.
 Getting page [[Fribourg]]
 Getting page [[Fribourg (doorverwijspagina)]]
 Page does not exist, using the first link in page Fribourg.
 Traceback (most recent call last):
  File "solve_disambiguation.py", line 847, in <module>
    main()
  File "solve_disambiguation.py", line 843, in main
    bot.run()
  File "solve_disambiguation.py", line 733, in run
    thistxt = disambPage.linkedPages()[0].aslink()
 IndexError: list index out of range

Maar die pagina bestaat dus wel. Wat doe ik fout? Londenp zeg't maar 24 jan 2007 21:49 (CET)[reageer]

Mogelijk is/was de juiste indexering nog niet aanwezig?, maar waarom pak je nu een bestaande dp en met vele omwegen, waarom niet eerst een test met een bestaande zie dp? Verder is helemaal niet gewenst dat we gaan doorverwijzen op deze manier. Dit schept meer verwarring dan het oplost. En verder lost totaal de problemen niet op, zie ook mijn reactie op dat overleg... Ik zou graag willen dat men eerst eens serieus op punten wordt ingegaan en discussie eens centraal gehouden wordt... Dolfy 25 jan 2007 01:26 (CET)[reageer]

Dolfy: ik stel voor dat jij je buiten de discussie houdt aangezien je duidelijk niet het inzicht hebt over hoe botjes werken. Je kritiek in correct nederlands verwoorden helpt trouwens ook goed.
Londenp: is je pywikipedia een beetje recent? even updaten kan helpen; er is namelijk een wijziging geweest in de html-source van de geschiedenistab. valhallasw 25 jan 2007 09:01 (CET)[reageer]
Ik heb hem gisteren nog met CVS geactualiseerd. Ik probeer het nog eens, maar eerst die reverts van Dolfy ongedaan maken, hij stoort in mijn test. Londenp zeg't maar 25 jan 2007 09:03 (CET)[reageer]
Ik heb een separaat kopje aangemaakt voor de niet ter zaken doende discussie hier. Ik wil deze thread graag beperken tot de technische kwestie. Ik heb het nog eens geprobeerd met de actueelste files, maar kwam tot hetzelfde resultaat. Wie kent de oplossing? Londenp zeg't maar 25 jan 2007 13:14 (CET)[reageer]
Ik zou niet weten wat je fout doet. Ik krijg het volgende:
 $ python solve_disambiguation.py Fribourg -primary
 Checked for running processes. 1 processes currently running, including the current process.
 Getting page [[Fribourg]]
 
   0 - Fribourg (stad)
 
 Getting references to [[Fribourg]]
 Found 5 references.
 Ignoring page Wikipedia:Doorverwijspagina/F
 Ignoring page Wikipedia:De kroeg/Archief 20051230
 Will work on 3 pages.
 Getting 3 pages from wikipedia:nl...
 
 
 >>> Lijst van gemeenten in Zwitserland <<<
 Fresens]] || Neuchâtel
 |-
 | [[Fribourg]] || Fribourg
 |-
 | [[Frick (Z
 Option (#, r#, s=skip link, e=edit page, n=next page, u=unlink, q=quit
         m=more context, d=show disambiguation page, l=list, a=add new): 
Ik gebruik de nieuwste versie van het framework, alle files de nieuwste versie dus. --Tuvic 25 jan 2007 15:01 (CET)[reageer]
Als ik dat zo zie, dan werkt -primary bij jou niet. Hij kijkt bij jouw botrun naar de link op Fribourg, terwijl hij zou moeten kijken (volgens -primary) op de links op Fribourg (doorverwijspagina). Groet Londenp zeg't maar 25 jan 2007 17:15 (CET)[reageer]
Blijkbaar ligt dat aan het feit dat 'Fribourg' een redirect is: als ik even de redirect uitschakel, en er dus een gewone link van maak, krijg ik wel
 $ python solve_disambiguation.py Fribourg -primary
 Checked for running processes. 1 processes currently running, including the current process.
 Getting page [[Fribourg]]
 Getting page [[Fribourg (doorverwijspagina)]]
 
   0 - Freiburg
   1 - Fribourg (Moselle)
   2 - Fribourg (bisdom)
   3 - Fribourg (kanton)
   4 - Fribourg (stad)
 
 Getting references to [[Fribourg]]
 Found 5 references.
 Ignoring page Wikipedia:Doorverwijspagina/F
 Ignoring page Wikipedia:De kroeg/Archief 20051230
 Will work on 3 pages.
 Getting 3 pages from wikipedia:nl...
 
 
 >>> Lijst van gemeenten in Zwitserland <<<
 Fresens]] || Neuchâtel
 |-
 | [[Fribourg]] || Fribourg
 |-
 | [[Frick (Z
 Option (#, r#, s=skip link, e=edit page, n=next page, u=unlink, q=quit
         m=more context, d=show disambiguation page, l=list, a=add new):

Dus de code werkt wel, als de pagina geen redirect is. Ik weet niet of het de bedoeling van de code is, of dat de botmakers iets over het hoofd hebben gezien of zo. Ik hoop dat je er iets mee bent.

Ah. Kwestie van zeuren over een redirect uitschakelen;
valhallasw@elladan:~/wikipy/pywikipedia$ diff solve_disambiguation.py solve_disambiguation_with_redir.py
483c483
<             text=refPage.get(throttle=False)
---
>             text=refPage.get(throttle=False,get_redirect=True   )
583c583
<                             disambigText = editor.edit(disambPage.get(), jumpIndex = m.start())
---
>                             disambigText = editor.edit(disambPage.get(get_redirect=True), jumpIndex = m.start())
733c733
<             elif self.getAlternatives:
---
>             if (self.getAlternatives):
741c741
<                             thistxt = disambPage2.get(throttle=False)
---
>                             thistxt = disambPage2.get(throttle=False,get_redirect=True)
747c747
<                             thistxt = disambPage.get(throttle=False)
---
>                             thistxt = disambPage.get(throttle=False,get_redirect=True)

(diff van mijn edits tegen __version__='$Id: solve_disambiguation.py,v 1.214 2006/03/15 02:57:06 wikipedian Exp $') ik denk dat ik niets meer heb gedaan dan alle .get's opzoeken en daar get_redirect=True bijzetten en een elif in een if veranderen. Et voila, bruikbare output (maar ik heb niet netjes gekeken welke get_redirect's echt nodig waren) valhallasw 25 jan 2007 20:43 (CET)[reageer]

(oh, en het is inderdaad de bedoeling dat dit gebeurt; bij een redirectpagina wordt normaal gesproken alleen die redirect gebruikt. Of het handig/nodig is? geen idee, lijkt me niet. Eigenlijk zou het met alleen het veranderen van die if in een elif het probleem opgelost moeten zijn, als je -redirect nog als extra optie gebruikt) valhallasw 25 jan 2007 20:47 (CET)[reageer]

En nu maar hopen dat André Engels deze discussie leest en een oplossing zou kunnen maken. Bij voorbaat dank André Londenp zeg't maar 25 jan 2007 21:55 (CET)[reageer]
De versie die valhallasw hierboven noemt, werkt gewoon voor mij. Die get_redirect = True is niet nodig, omdat de bot rekening houdt met het feit dat het argument primary betekent dat de hoofdpagina een doorverwijzing is. --Erwin85 25 jan 2007 23:12 (CET)[reageer]
Het gebruik van get_redirect is inderdaad niet nodig, maar voor het correct verkrijgen van de linkopties is een aanpassing nodig. --Erwin85 25 jan 2007 23:44 (CET)[reageer]
Ik heb nu een aanpassing gedaan zodat -primary in dit soort gevallen correct werkt (versie 1.244, als ik het me goed herinner). - André Engels 26 jan 2007 20:58 (CET)[reageer]
Bedankt, meteen testen! Londenp zeg't maar 26 jan 2007 23:12 (CET)[reageer]

Replace.py met math, bug report[bewerken | brontekst bewerken]

Ik ben het replace.py bezig Wiki syntax te fixen en dat gaat vrij goed, maar helaas verbetert hij soms dingen die hij niet zou moeten verbeteren. Bijvoorbeeld zie deze wijziging: http://nl.wikipedia.org/w/index.php?title=Gamma-verdeling&diff=prev&oldid=6664904 . Dit komt wel vaker voor met de math functie. Dus in dit geval zou het beter zijn als replace.py -fix:XXXX de accolade met rust laat indien dit tussen <math> en </math> staat. Waar kan ik een bugreport doen? Londenp zeg't maar 26 jan 2007 12:34 (CET)[reageer]

Bugs kunnen gemeld worden op http://sourceforge.net/tracker/?group_id=93107&atid=603138. Alternatief zou je ook lid kun worden van de mailinglijst op https://lists.sourceforge.net/lists/listinfo/pywikipediabot-users; houd er echter rekening mee dat dit een lijst is die rond de 150 berichten per maand krijgt (elke keer als er iets aan de bot gewijzigd wordt, wordt er een bericht naar de lijst gestuurd). - André Engels 26 jan 2007 21:05 (CET)[reageer]
Maar je bent wel altijd op de hoogte van de nieuwe mogelijkheden en fouten. :-) --Tuvic 26 jan 2007 22:50 (CET)[reageer]
Bedankt ik ben nu zowel geabonneerd, als ook heb ik een bugreport gedaan. Londenp zeg't maar 26 jan 2007 23:22 (CET)[reageer]