• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Пожалуйста, объясните содержимое python скрипта.

NostroGuardian

One Level
23.09.2019
9
5
BIT
1
Всем доброго времени суток.
Пожалуйста, объясните содержание данного скрипта:


Python:
import requests
import hashlib
import re



url="http://docker.hackthebox.eu:33205/"

r=requests.session()
out=r.get(url)
out=re.search("<h3 align='center'>+.*?</h3>",out.text)
out=re.search("'>.*<",out[0])
out=re.search("[^|'|>|<]...................",out[0])

out=hashlib.md5(out[0].encode('utf-8')).hexdigest()

print("sending md5 :-{}".format(out))

data={'hash': out}
out = r.post(url = url, data = data)

print(out.text)

Самое трудное для моего понимания начинается со строчки: out=re.search("<h3 align='center'>+.*?</h3>",out.text)
Буду благодарен =)
 

Givi

New member
27.06.2019
1
0
BIT
0
Это поиск по ссылке и вывод того, что он нашёл
вот ссылка где он ищет:
Надеюсь, что помог.
 

NostroGuardian

One Level
23.09.2019
9
5
BIT
1
Это поиск по ссылке и вывод того, что он нашёл
вот ссылка где он ищет:
Надеюсь, что помог.
Это да, просто там суть не только в этом)
Скрипт берет со страницы содержание тега h3, шифрует его посредством md5 и отправляет в форму на этой странице.
Просто непонятен сам код)
Зачем к примеру в строчке
out=re.search("<h3 align='center'>+.*?</h3>",out.text)
Знаки "+.*?"
А так же
out=re.search("[^|'|>|<]...................",out[0])
 

f22

Codeby Academy
Gold Team
05.05.2019
1 940
228
BIT
1 772
Это да, просто там суть не только в этом)
Скрипт берет со страницы содержание тега h3, шифрует его посредством md5 и отправляет в форму на этой странице.
Просто непонятен сам код)
Зачем к примеру в строчке
out=re.search("<h3 align='center'>+.*?</h3>",out.text)
Знаки "+.*?"
А так же
out=re.search("[^|'|>|<]...................",out[0])
Знаки "+.*?" представляют собой описание регулярного выражения (на самом деле очень странного.
. - поиск одного любого символа
+ - один или больше символов
? - ноль или один символ
* - квантификатор бесконечного количества.

А в последней строке [^|'|>|<]
^ -исключает следующие за ней символы (|'|>|<) из поиска
. - любой символ (19 точек, значит, 19 символов)
 

NostroGuardian

One Level
23.09.2019
9
5
BIT
1
Знаки "+.*?" представляют собой описание регулярного выражения (на самом деле очень странного.
. - поиск одного любого символа
+ - один или больше символов
? - ноль или один символ
* - квантификатор бесконечного количества.

А в последней строке [^|'|>|<]
^ -исключает следующие за ней символы (|'|>|<) из поиска
. - любой символ (19 точек, значит, 19 символов)
Благодарю, очень полезный ответ =)

Это регулярка, почитать можно
Большое спасибо =)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!