Python笔记: HTML Scraping

Reading time ~1 minute

提取HTML 内容

很多公司都提供网页查询的功能,但是不会对公众开发API,所以很多时候,都只能通过解析html来得到我们想要的数据。大部分情况下,只有部分的HTML是有用的。 这就需要将我们需要的部分,提取出来。比较地道的英文是HTML Scraping,直译过来是刮削,就是这个玩意: Scraper 所以很多XBMC插件的中文是某某刮削器。。。

HTML提取比较流行的工具有:

  • lxml.html
  • beautifulsoup
  • re(Regular Expression)

lxml.html的样例有使用XPath,所以决定先通过lxml.html试试,能否到达想要的效果,也顺便复习一下XPatch。

使用lxml的html 包来提取HTML中的内容

直接上代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
>>> from lxml import html
>>> tree = html.parse('ems.html').getroot()
>>> delivery = tree.xpath('//table[@id="showTable"]/tr/td/text()')

>>> for i, data in enumerate(delivery):
>>>     delivery[i] = data.strip()

>>> for data in delivery:
>>>     print data

2015-11-10
06:40:00
收寄
荷兰

2015-11-11
08:03:00
离开处理中心,发往中国 北京
荷兰

>>> delivery = tree.xpath('//table[@id="showTable"]/tr')
>>> for tr in delivery:
>>>     for td in tr.itertext():
>>>         status += td.strip() + ' '
>>>     status += '\n'
    
 2015-11-10  06:40:00  收寄  荷兰    
 2015-11-11  08:03:00  离开处理中心,发往中国 北京  荷兰    
 2015-11-12  10:12:00  收寄  荷兰

AZ-204: Practice topic 5

1. inboundOutboundBackend2. C### [Page 25](https://www.examtopics.com/exams/microsoft/az-204/view/25/)25. 26. 27. 28. 29. ### [Page 26](h...… Continue reading

AZ-204: Practice topic 4

Published on February 20, 2022

AZ-204: Practice topic 3

Published on February 07, 2022