Frage

Kann jemand bitte erklären Sie mir, was hier los ist. Es scheint, dass Python auf Arbeit verweigert (mit Köper), wenn ich an meine Mailbox auf Yahoo einzuloggen versuchen:

Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) [MSC v.1310 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.

    ****************************************************************
    Personal firewall software may warn about the connection IDLE
    makes to its subprocess using this computer's internal loopback
    interface.  This connection is not visible on any external
    interface and no data is sent to or received from the Internet.
    ****************************************************************

IDLE 1.2.4      
>>> import twill
>>> twill.shell.main()

 -= Welcome to twill! =-

current page:  *empty page* 
>> go http://us.yahoo.com
==> at http://us.yahoo.com
current page: http://us.yahoo.com
>> follow Mail
==> at https://login.yahoo.com/config/login_verify2?.intl=us&.src=ym
current page: https://login.yahoo.com/config/login_verify2?.intl=us&.src=ym
>> showforms

Form name=login_form (#1)
## ## __Name__________________ __Type___ __ID________ __Value__________________
1     .tries                   hidden    (None)       1 
2     .src                     hidden    (None)       ym 
3     .md5                     hidden    (None)        
4     .hash                    hidden    (None)        
5     .js                      hidden    (None)        
6     .last                    hidden    (None)        
7     promo                    hidden    (None)        
8     .intl                    hidden    (None)       us 
9     .bypass                  hidden    (None)        
10    .partner                 hidden    (None)        
11    .u                       hidden    (None)       68gre5567rq16 
12    .v                       hidden    (None)       0 
13    .challenge               hidden    (None)       9wKUoOWDdP5Fho0kPfqPKEhPZBdK 
14    .yplus                   hidden    (None)        
15    .emailCode               hidden    (None)        
16    pkg                      hidden    (None)        
17    stepid                   hidden    (None)        
18    .ev                      hidden    (None)        
19    hasMsgr                  hidden    (None)       0 
20    .chkP                    hidden    (None)       Y 
21    .done                    hidden    (None)       http://mail.yahoo.com 
22    .pd                      hidden    (None)       ym_ver=0&c=&ivt=&sg= 
23    pad                      hidden    pad          6 
24    aad                      hidden    aad          6 
25    login                    text      username      
26    passwd                   password  passwd        
27    .persistent              checkbox  persistent   [] of ['y'] 
28 1  .save                    submi ... .save         

current page: https://login.yahoo.com/config/login_verify2?.intl=us&.src=ym
>> fv 1 login *****************
current page: https://login.yahoo.com/config/login_verify2?.intl=us&.src=ym
>> fv 1 passwd ***************
current page: https://login.yahoo.com/config/login_verify2?.intl=us&.src=ym
>> submit
Note: submit is using submit button: name=".save", value=""

Following HTTP-EQUIV=REFRESH to http://us.mg5.mail.yahoo.com/dc/launch?.gx=1&.rand=b3a02cc8lb0aa
current page: http://us.mg5.mail.yahoo.com/dc/launch?.gx=1&.rand=b3a02cc8lb0aa
>> info

Page information:
    URL: http://us.mg5.mail.yahoo.com/dc/launch?.gx=1&.rand=b3a02cc8lb0aa
    HTTP code: 200
    Content type: text/html; charset=utf-8 (HTML)
    Page title: Yahoo! Mail

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    twill.shell.main()
  File "C:\Python25\Lib\site-packages\twill\shell.py", line 383, in main
    shell.cmdloop(welcome_msg)
  File "C:\Python25\lib\cmd.py", line 142, in cmdloop
    stop = self.onecmd(line)
  File "C:\Python25\lib\cmd.py", line 219, in onecmd
    return func(arg)
  File "C:\Python25\Lib\site-packages\twill\shell.py", line 42, in do_cmd
    print '\nERROR: %s\n' % (str(e),)
  File "C:\Python25\lib\HTMLParser.py", line 59, in __str__
    result = self.msg
AttributeError: 'ParseError' object has no attribute 'msg'
>>> 

Update 1 :

(dieses Update ist meine Antwort auf Robus)

Hallo, Robus !!!

Zunächst einmal gehe ich davon aus es war ein Tippfehler, wenn Sie schreibt:


  

Hier ist, was ich getan habe: Ging zu   C: \ Python26 \ Lib \ site-packages \ Köper-0,9-py2.6.egg \ Köper \ other_packages \


Ich glaube, Sie diesen Pfad gemeint: " C: \ Python26 \ Lib \ site-packages \ Köper \ other_packages ". Ansonsten kann ich „ Köper-0,9-py2.6.egg “ sehen ein solcher Ordner / Verzeichnis dort nicht genannt - gibt es nur eine Datei mit diesem Namen (die, die ich denke, während wurde heruntergeladen . die Installation von mechanize) Bitte sagen Sie mir, wenn meine Annahme falsch ist. - ich auch nicht etwas ganz offensichtlich hier zu sehen sein, wie ich nur ein Neuling bin

So, nachdem Ihre Anweisungen, ich habe diese:

  1. Ich fand " C: \ Python25 \ Lib \ site-packages \ Köper \ other_packages_mechanize_dist " auf meinem Computer (wie Sie sehen können, habe ich nicht python26 haben, sondern Python 25 installiert - das könnte auch ein Problem) sein

  2. änderte ihren Namen in " _mechanize_dist_backup " (der vollständige Pfad jetzt sein " C: \ Python25 \ Lib \ site-packages \ Köper \ other_packages_mechanize_dist_backup ")

  3. kopiert meine heruntergeladen und entpackt " mechanize-0.2.2 " in " C: \ Python25 \ Lib \ site-packages \ Köper \ other_packages " ( der vollständige Pfad Wesen " C: \ Python25 \ Lib \ site-packages \ Köper \ other_packages \ mechanize-0.2.2 ")

  4. ändert ihren Namen in " _mechanize_dist " (die vollständigen Pfad Wesen " C: \ Python25 \ Lib \ site-packages \ Köper \ other_packages_mechanize_dist ")

  5. Kopiert " ClientForm " Datei von " _mechanize_dist_backup ", und es klebte in " _mechanize_dist " (in der Tat finde ich zwei Dateien dort den Namen " ClientForm ". eine eine python-Datei ist, eine andere ist eine kompilierte python-Datei - ich kopiert und beide eingefügt)

Nachdem das getan, ich alle diese Befehle versuchte mit und bekam gleich am Anfang stecken - ich konnte nicht einmal Köper jetzt importieren:


IDLE 1.2.4      
>>> import twill

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import twill
  File "C:\Python25\Lib\site-packages\twill\__init__.py", line 52, in <module>
    from shell import TwillCommandLoop
  File "C:\Python25\Lib\site-packages\twill\shell.py", line 9, in <module>
    from twill import commands, parse, __version__
  File "C:\Python25\Lib\site-packages\twill\commands.py", line 7, in <module>
    import _mechanize_dist as mechanize
ImportError: No module named _mechanize_dist

Es scheint, dass das System nicht das neu erstellte erkennt " _mechanize_dist ".

Könnte es sein, weil ich Python habe 25 anstelle von Python 26? Oder vielleicht gibt es einen anderen Grund?

War es hilfreich?

Lösung

Das Problem liegt in Mechanize. Sie benötigen die neueste Version

su
git clone git://github.com/jjlee/mechanize.git
cd mechanize
python setup.py install
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top