Я пытаюсь создать сценарий, который будет входить на веб-сайт, а затем очищать данные с определенной страницы на веб-сайте, доступ к которой можно получить только после входа в систему. Данные не передаются в оболочке IDLE независимо от того, если я уже вошел в систему или нет, это говорит мне о том, что на веб-сайте должен быть какой-то ключ подтверждения или идентификатор, который я не вижу в коде веб-сайта для входа. Я несколько раз просматривал код для входа на сайт, но не могу найти ничего, чего мне не хватает. Я не уверен, что мне разрешено размещать здесь данные HTML для других сайтов, но вот сценарий, который я пишу.
Пожалуйста, извините закомментированный раздел, помеченный как скрипты Excel:
Я уже пытался использовать lxml и beautifulsoup для целей навигации, но, похоже, это не дает никакого эффекта. Я пробовал подобный скрипт на других, более простых сайтах, и он, похоже, работал там по большей части.
import requests
from lxml import html
USERNAME = <username>
PASSWORD = <password>
LOGIN_URL = "https://www.tm3.com/homepage/login.jsf"
URL = "https://www.tm3.com/mmdrewrite/mmd/14902.faces"
def main():
session_requests = requests.session()
# Get login csrf token
result = session_requests.get(LOGIN_URL)
tree = html.fromstring(result.text)
authenticity_token = list(set(tree.xpath('//input[@name=
"javax.faces.ViewState"]/@value')))[0]
# Create payload
payload = {
"username": USERNAME,
"password": PASSWORD,
"javax.faces.ViewState": authenticity_token
}
# Perform login
result = session_requests.post(LOGIN_URL, data = payload, headers =
dict(referer = LOGIN_URL))
# Scrape url
result = session_requests.get(URL, headers = dict(referer = URL))
tree = html.fromstring(result.content)
print('',result.content)
"""
#excel scripts
def excel():
import xlwt
book = xlwt.Workbook(encoding= "utf-8")
sheet1= book.add_sheet("Sheet1")
#for loop for putting data into different cells
num=0
row = sheet1.row(num)
row.write(num,test)
print("EVEN:" , test)
print("ODD:" , ODD)
book.save("Testing.xls")
"""
if __name__ == '__main__':
main()
Я хочу, чтобы веб-страница была напечатана целиком, но вместо этого скрипт просто распечатывает страницу входа в систему