@K1NDER

Как получить нужное значение?

ПОлучаю такую строчку:
Proxy(host='47.251.13.204', port='3128', code='us', country='united states', anonymous=False, type='http', source='us-proxy')

Мне нужно оттуда достать host и port, как это лучше реализовать? Пробовал регулярками, но не вышло
  • Вопрос задан
  • 63 просмотра
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
А это точно строка а не объект?
К примеру <ваша переменная>.host - не отдает желаемое?
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
SoreMix
@SoreMix Куратор тега Python
yellow
Если это действительно строка, а не класс какой нибудь - то
s = "Proxy(host='47.251.13.204', port='3128', code='us', country='united states', anonymous=False, type='http', source='us-proxy')"

host = re.search(r"host='(.+?)'", s).group(1)
port = re.search(r"port='(.+?)'", s).group(1)

print(host, port)
Ответ написан
Комментировать
MinTnt
@MinTnt
import re

print(re.findall(r"(host|port)='([\d\.]+)'", str(proxy)))

Возвращает список с кортежами с искомыми данными.
Далее можно к нему применить как пример - dict(re.findall...), и потом считывать получаемые данные как у словаря.
Ответ написан
Комментировать
@stead
host = Proxy['host']
port = {roxy['port']
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы