取指定html标签中的,利用PyQuery获取HTML指定标签内容_html/css_WEB-ITnose

5268f80b9b1e01f982625ef6fac83ca1.png

安装

sudo pip install pyquery

例子 from pyquery import PyQueryimport urllib2page = urllib2.urlopen("http://www.lzu.edu.cn")text = unicode(page.read(), "utf-8")doc = PyQuery(text)for event in doc('.r li'): event = PyQuery(event) #loc = event.find('.h').text() time = event.text().encode('utf-8') #name = event.find('title').text() #print 'name: %s' % name print '名字 : %s' % time #print 'location : %s' % loc print '----------------------'

注意event里是unicode,在内存中运算的一定是固定2字节的unicode,存储要转为变字节的utf-8。

当然还有别的模块也可以用,如 #!/usr/bin/env python#-*- coding: utf8 -*-from HTMLParser import HTMLParserfrom htmlentitydefs import name2codepointimport urllib2class MyHTMLParser(HTMLParser): def __init__(self): HTMLParser.__init__(self) self._flag = '' def handle_starttag(self, tag, attrs): if tag == 'h3' and attrs.__contains__(('class','event-title')): self._flag = 'event-title' if tag == 'time': self._flag = 'time' if tag == 'span' and attrs.__contains__(('class','event-location')): self._flag = 'event-location' def handle_data(self, data): if self._flag == 'event-title': print '会议名称: %s' %data self._flag = '' #if self._flag == 'time': # print '会议时间: %s' %data if self._flag == 'event-location': print '会议地点: %s' %data print '-------------------' self._flag = ''page = urllib2.urlopen('https://www.python.org/events/python-events/').read()parser = MyHTMLParser()parser.feed(page)

References

[1].http://www.douban.com/note/208670234/

[2].http://blog.csdn.net/mindmb/article/details/7898528

[3].http://pythonhosted.org/pyquery/api.html

1428d0e076c3959ab11d28a39bc84fab.png

5268f80b9b1e01f982625ef6fac83ca1.png

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值