2012-01-19 4 views
0

파이썬을 사용하고 Google의 하루가 지나면 내 오래된 두뇌는 더욱 어려움을 겪습니다.긁힌 웹 페이지에서 값 추출

나는 pycurl을 사용하여 ntlm 프록시에서 로그를 남기고 페이지를 긁어 낸 다음 beautifulsoup를 사용하여 결과를 미리보기로 표시했습니다.

나는 prettify 출력에서 ​​3 개의 값을 추출하여 변수로 저장하려고합니다. 페이지가 동적으로 생성되므로 페이지의 위치가 계속 변경됩니다. 3 개의 레이블은 페이지에 한 번만 나타나며 해당 값과 비교 한 위치는 일정합니다.

필자는 prettify 출력에서 ​​Value1, Value2 및 Value3을 어떻게 추출하고 변수로 저장합니까?

이 3 개의 oneliner는 내가 파이썬에서해야 할 것들입니다.

grep -A 3 "Label1"prettify.txt | 꼬리 - n 1 | awk '(인쇄 $ 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 /> 

추출물이

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

무엇이 문제입니까? 어떤 코드를 시도 했습니까? 작동하지 않는 것은 무엇입니까? –

+0

질문 : Prettify 출력에서 ​​Value1, Value2 및 Value3을 어떻게 추출하고 변수로 저장합니까? – newb

+0

힌트 : ** 업데이트 ** 질문은 기대치입니다. 코멘트는 단순히 질문을 반복하기 때문에 도움이되지 않습니다. –

답변

0

는 좀 hackish 코딩을 완료했습니다 나머지 콘텐츠로부터 데이터를 제거하라. 등 :

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

변수 beginning_locationending_location 될 수 특정 고유 지표 시작과 그것이 가변 resultant_value 속으로 스트리핑 배치되도록 값 종료. 내 hackish 방법이 어떤 식 으로든 또는 다른 도움이되기를 바랍니다!

+0

고마워 할 것입니다. 먼저 프로그래밍을하면서 읽기 달성 롯트는 거의 달성하지 못합니다. – newb

+0

행운을 빈다. 도움이 필요하면 이메일을 보내십시오 sbrichards [at] mit.edu와 아프다. :) – sbrichards