问题
I could successfully login and navigate through a website but when I inspected the logout button it is like javascript:__doPostBack('ctl00$lnkBtnLogout','')
as link, follow_link()
doesn't work on this (saying: no adapters)??? Can someone help me?
回答1:
From https://github.com/MechanicalSoup/MechanicalSoup:
A Python library for automating interaction with websites. MechanicalSoup automatically stores and sends cookies, follows redirects, and can follow links and submit forms. It doesn't do JavaScript.
This gives you two options.
Do the JavaScript yourself
Read the JavaScript. Reverse engineer it. Reimplement it in Python. Figure out what data in the page is dynamic and needed for the algorithm. Extract that using MechanicalSoup and insert it into your reimplementation.
Don't use MechanicalSoup
Use something which does support JavaScript (such as Selenium or PhantomJS) instead.
来源:https://stackoverflow.com/questions/49366610/in-mechanicalsoup-python-3x-how-to-logout-a-website-whose-logout-button-is-a-j