2012-01-19 4 views
0

Первая попытка использования python и после дня google мой старый мозг еще более запутан.Извлечение значения из очищенной веб-страницы

Я использовал pycurl для регистрации через прокси-сервер ntlm и очистите страницу, а затем использовал beautifulsoup, чтобы придать результат.

Я хочу извлечь 3 значения из вывода prettify и сохранить их как переменные. Страница динамически генерируется, поэтому их местоположение на странице меняется. 3 ярлыка появляются только один раз на странице, и их местоположение по сравнению с их соответствующими значениями является постоянным.

Как извлечь значения Value1, Value2 и Value3 из вывода prettify и сохранить их как переменные.

Эти 3 oneliners - это то, что мне нужно сделать в python.

grep -A 3 "Label1" prettify.txt | tail -n 1 | awk '{print $ 1}'

grep "Label2" prettify.txt | awk '{print $ 3}'

grep -B 4 "Label3" prettify.txt | awk '{print $ 1}' RS = [FS =] | Хвост -n 1

экстракт 1

<b> 
    <font color="Red"> 
    Label1 
    </font> 
    <font color="blue"> 
    Value1 
    </font> 
    </b> 
    <br /> 
    Label2: Value2 
    <br /> 

Extract 2

<li> 
    <font color="green"> 
     [value3] 
    </font> 
    <font color="red"> 
     Label3 
    </font> 
    </li> 
+2

В чем вопрос? Какой код вы пробовали? Что не работает? –

+0

Вопрос: Как извлечь Value1, Value2 и Value3 из вывода prettify и сохранить их как переменные. – newb

+0

Подсказка: ** Обновление ** вопрос - это ожидание. Комментарий не помогает, поскольку он просто повторяет вопрос. –

ответ

0

Я сделал некоторый хак кодирования перед тем, где я свернулась страница затем использовать функции поиска внутри кортежа в чтобы вырезать данные из остальной части содержимого. Такие, как:

resultant_value = result[result.find(beginning_location):result.find(ending_location)] 

переменные beginning_location и ending_location могли бы быть некоторые уникальные показатели на начало и конец значения, так что он раздели и помещают в переменную resultant_value. Надеюсь, мой хакерский метод помогает так или иначе!

+0

Спасибо, посмотрю, смогу ли я заставить его работать. Сначала переходите к программированию, так что чтение лотов мало. – newb

+0

Удачи! если вам нужна помощь, просто застрелите меня по электронной почте sbrichards [at] mit.edu и плохо попробуйте и помогите :) – sbrichards

Смежные вопросы