user1960836
user1960836

Reputation: 1782

Funnelweb TypeError on import

I have tried import some pages doing like this:

bin/funnelweb --crawler:url=http://wiki.scandiatransplant.org --crawler:max=50 --ploneupload=http://admin:localhost:8080/Plone

But I get this error message:

Usage: funnelweb [options]

funnelweb: error: ambiguous option: --ploneupload (--ploneupload:debug, --ploneupload:target?)

If instead I do this: (But if this worked, where will the imported pages be placed?)

bin/funnelweb --crawler:url=http://wiki.scandiatransplant.org --crawler:max=150

It works, as if it is importing, but at the end I get the traceback seen below. At the bottom it says: TypeError: replace() takes exactly 7 arguments (6 given)

Is this the creators mistake, or is it me giving insufficient arguments? I used this site for the tutorial: http://plone.org/products/funnelweb

INFO:typeguess:Document, text/html: 144
INFO:typeguess:Image, image/jpeg: 1
INFO:typeguess:Link, : 1
INFO:template1:extracted 0/144/151
INFO:template2:extracted 0/144/151
INFO:template3:extracted 0/144/151
INFO:template4:extracted 0/144/151
INFO:sitemapper:moved 0/151 from 0 sitemaps
INFO:indexguess:2 folders added. 0 defaultpages set, 149 items sorted
INFO:titleguess:0 folders added. 0 defaultpages set, 149 items sorted
INFO:titleguess:titles=0/148 (id=0,backlinks=0,parent=0)
INFO:attachmentguess:moved 0/154
INFO:urltidy:titles=0, normed=147, total=154
Traceback (most recent call last):
  File "bin/funnelweb", line 116, in <module>
    mr.migrator.runner.runner({},"funnelweb.remote")
  File "/home/magiq/Plone/buildout-cache/eggs/mr.migrator-1.0.1-py2.7.egg/mr/migrator/runner/__init__.py", line 132, in runner
    transmogrifier(pipelineid, **overrides)
  File "/home/magiq/Plone/buildout-cache/eggs/collective.transmogrifier-1.3-py2.7.egg/collective/transmogrifier/transmogrifier.py", line 62, in __call__
    for item in pipeline:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.ploneremote-1.3-py2.7.egg/transmogrify/ploneremote/remoteprune.py", line 116, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.ploneremote-1.3-py2.7.egg/transmogrify/ploneremote/remoteredirector.py", line 25, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.ploneremote-1.3-py2.7.egg/transmogrify/ploneremote/remoteworkflowupdater.py", line 41, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/collective.transmogrifier-1.3-py2.7.egg/collective/transmogrifier/sections/inserter.py", line 19, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.ploneremote-1.3-py2.7.egg/transmogrify/ploneremote/remotenavigationexcluder.py", line 32, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.ploneremote-1.3-py2.7.egg/transmogrify/ploneremote/remoteschemaupdater.py", line 42, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.ploneremote-1.3-py2.7.egg/transmogrify/ploneremote/remoteconstructor.py", line 53, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.siteanalyser-1.3-py2.7.egg/transmogrify/siteanalyser/treeserializer.py", line 51, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/collective.transmogrifier-1.3-py2.7.egg/collective/transmogrifier/sections/inserter.py", line 19, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.siteanalyser-1.3-py2.7.egg/transmogrify/siteanalyser/treeserializer.py", line 51, in __iter__
    for item in self.previous:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.siteanalyser-1.3-py2.7.egg/transmogrify/siteanalyser/urltidy.py", line 83, in __iter__
    for item in self.relinker:
  File "/home/magiq/Plone/buildout-cache/eggs/transmogrify.siteanalyser-1.3-py2.7.egg/transmogrify/siteanalyser/relinker.py", line 155, in __iter__
    item['remoteUrl'] = "./" + replace(link, item, changes, counter, self.missing, bad)
TypeError: replace() takes exactly 7 arguments (6 given)

Upvotes: 1

Views: 117

Answers (1)

Martijn Pieters
Martijn Pieters

Reputation: 1123420

You have run into a bug, yes. I've filed this as an issue in the transmogrify.siteanalyser issue tracker, see issue #3.

The replace() method was given an extra parameter but the call on line 155 was never updated to provide that extra parameter.

You should be able to fix this yourself by editing the file Plone/buildout-cache/eggs/transmogrify.siteanalyser-1.3-py2.7.egg/transmogrify/siteanalyser/relinker.py and change line 155 from:

item['remoteUrl'] = "./" + replace(link, item, changes, counter, self.missing, bad)

to

item['remoteUrl'] = "./" + replace(link, item, changes, counter, self.missing, bad, self.broken_link_normalise)

Upvotes: 1

Related Questions