这说明了如何登录网站。它非常脆弱,但是 目的是演示如何处理表格,提交表格以及 使用会话来维护跨页面读取的cookie 该程序假设您已完成研究并且您知道 您需要填写的字段。
import sys
import requests
import lxml
import getpass
from bs4 import BeautifulSoup
sys.path.append("../lib")
from agentsGalore import agentsGalore
from formHelper import formHelper
开始会议 会话= requests.Session() ag = agentsGalore()
def openURL(url,cookie=None):
global session
global ag
headers = ag.makeHeader("MacFirefox58","default","default","langUS")
try:
if cookie:
r = session.get(url, cookies=cookie, headers=headers)
else:
r = session.get(url, headers=headers)
except requests.exceptions.RequestException as e:
print(e)
exit(1)
return r
此函数使用散列中的参数对URL执行POST def postURL(url,params): 全球股份公司 全球会议 标头= ag.makeHeader(“ MacFirefox58”,“默认”,“默认”,“ langUS”) 尝试: r = session.post(URL,数据=参数) 除非requests.exceptions.RequestException为e: 打印(e) 退出(1)
return r
首先,打开登录页面
url = 'https://my.wlc.edu/ICS/'
resp = openURL(url)
fh = formHelper(resp.text)
获取一个填充的参数结构。您可以调用fh.analyzeInputs()来 查看所有输入字段是什么。
params = fh.populateFormInputs(fh.getFormById('MAINFORM'))
userid = getpass.getpass("enter your userid:",sys.stderr)
password = getpass.getpass("enter your password:",sys.stderr)
params['userName'] = userid
params['password'] = password
formurl = 'https://my.wlc.edu/ICS/'
res = postURL(formurl,params)
答案 0 :(得分:0)
您可以尝试运行:
apt-get install Python-bs4
或
pip install beautifulsoup4
或
easy_install beautifulsoup4
在命令行中安装软件包beautifulsoup4。