python抓取网页数据的三种方法
2017-06-19 20:38
369 查看
一、正则表达式提取网页内容
解析效率:正则表达式>lxml>beautifulsoup代码:
二、BeautifulSoup方法提取网页内容代码如下:
三、lxmllxml库功能和使用类似BeautifulSoup库,不过lxml解析速度比beautifulsoup快。代码:
解析效率:正则表达式>lxml>beautifulsoup代码:
import reimport urllib2 urllist = 'http://example.webscraping.com/places/default/view/United-Kingdom-239' html = urllib2.urlopen(urllist).read()num = re.findall('<td class="w2p_fw">(.*?)</td>',html)print numprint "num[1]: ",num[1] |
from bs4 import BeautifulSoupimport urllib2 urllist = 'http://example.webscraping.com/places/default/view/United-Kingdom-239' html = urllib2.urlopen(urllist).read()#把html格式进行确定和纠正soup = BeautifulSoup(html,'html.parser')#找出tr标签中id属性为places_area__row的内容,如果把find改成findall函数则会把匹配所#有的内容显示出来,find函数只匹配第一次匹配的内容。tr = soup.find('tr',attrs={'id':'places_area__row'})td = tr.find('td',attrs={'class':'w2p_fw'})#取出标签内容area = td.textprint "area: ",area |
import lxml.htmlimport urllib2 urllist = 'http://example.webscraping.com/places/default/view/United-Kingdom-239' html = urllib2.urlopen(urllist).read()tree = lxml.html.fromstring(html)td = tree.cssselect('tr#places_area__row > td.w2p_fw')[0]area = td.text_content()print area |
相关文章推荐
- python三种网页抓取方法
- Python 三种网页抓取方法
- Python爬虫之三种网页抓取方法性能比较
- python3中数据抓取的三种方法
- 网页分页数据的三种抓取方式亲测
- 我的python学习之路----Python 3 抓取网页的 N 种方法
- 三种asp.net 抓取网页源代码,推荐方法一
- Python3 抓取网页资源的N种方法
- asp.net 抓取网页源码三种实现方法
- 用python进行分布式网页数据抓取(一)——设计
- 从网页抓取数据的一般方法
- 三种asp.net 抓取网页源代码,推荐方法一
- php file_get_contents抓取Gzip网页乱码的三种解决方法
- 网页分页数据的三种抓取方式
- C# 从网页抓取数据的一般方法
- python3 抓取网页资源的 N 种方法
- 从网页抓取数据的一般方法
- python 解析网页数据的几种方法简介
- PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
- (转)如何用python抓取网页并提取数据