从抓取的网页中提取值

时间:2012-01-19 03:21:01

标签: python beautifulsoup scraper

首次尝试使用python,经过一天的谷歌后,我的老脑子更加难倒。

我使用pycurl通过ntlm代理和scrape页面进行记录,然后使用beautifulsoup来美化结果。

我想从美化输出中提取3个值并将它们存储为变量。页面是动态生成的,因此它们在页面上的位置不断变化。 3个标签只在页面上出现一次,它们的位置与它们各自的值相比是不变的。

如何从美化输出中提取Value1,Value2和Value3并将它们存储为变量。

这三个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 />

提取2

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

1 个答案:

答案 0 :(得分:0)

在我卷曲页面然后在元组中使用find函数以便从其余内容中去除数据之前,我已经完成了一些hackish编码。 如:

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

变量beginning_locationending_location可以是值的开头和结尾的某些唯一指标,以便将其删除并放入变量resultant_value中。希望我的hackish方法有所帮助!