So cute are you Python 13

来源:互联网 发布:overture mac 编辑:程序博客网 时间:2024/06/05 14:12

上一节简单的介绍了,BeautifulSoup 的基本使用方法:

这一节,我们加一点点难度抓取博客的文章连接:

1.首先我们要分析要爬取的页面的结构,再根据结构抓取特定的页面:

1.1 解释 BeautifulSoup 函数用法

soup = BeautifulSoup(page) #格式化抓取的页面

soup.findAll(name="span")#抓取标签 

抓取文章标题--代码:

#!/usr/bin/evn python  #coding:utf-8  #FileName:re_learn01.py  #Function:show first time to use beautifulSoup  #History:25-10-2013  import bs4import urllibfrom bs4 import BeautifulSoupdef bea_Demo():    url='http://yxh1157686920.blog.51cto.com/all/7743046'    ss=urllib.urlopen(url)    page=ss.read()    soup = BeautifulSoup(page)    print "type(soup)=",type(soup)    h1userSoup=[]    h1userSoup = soup.findAll(name="span")    #print "soup=",soup    for h in h1userSoup:        res=h.findAll('a')        for r in res:            if r!=None:                #print ''                print "***:",r.string,":--:\n"                    if __name__=='__main__':    bea_Demo()
结果:

$ python bea_learn02.py type(soup)= <class 'bs4.BeautifulSoup'>***: 原创 :--:***: 翻译 :--:***: 转载 :--:***: Drupal7 Note-1:smtp模块+Gmail搭建邮件发送功能 :--:***: 初识 XSS 3  :--:***: Struts 2  漏洞解决办法 :--:***: 初识 XSS 2 :--:***: Drupal  函数实现分页机制 :--:***: drupal  为内容添加分类 :--:***: drupal 6 DB  :--:
2.分析出连接:

代码:

#!/usr/bin/evn python  #coding:utf-8  #FileName:re_learn01.py  #Function:show first time to use beautifulSoup  #History:25-10-2013  import bs4import urllibfrom bs4 import BeautifulSoupdef bea_Demo():    url='http://yxh1157686920.blog.51cto.com/all/7743046'    url1='http://yxh1157686920.blog.51cto.com'    ss=urllib.urlopen(url)    page=ss.read()    soup = BeautifulSoup(page)    print "type(soup)=",type(soup)    h1userSoup=[]    h1userSoup = soup.findAll(name="span")    #print "soup=",soup    for h in h1userSoup:        res=h.findAll('a')        for r in res:            if r!=None:                print ''                print "文章标题:",r.string,":--:"                                s1=str(r).find('href')                s2=str(r).find('">')                s3= str(r)[s1+6:s2]                print s3                if s3.find('title')>0:                    ss1=s3.find('title')                    ss2=s3[:ss1-2]                    s3=ss2                s4=url1+s3                print 'URL:_',s4    if __name__=='__main__':    bea_Demo()
结果:

$ python bea_learn02.py type(soup)= <class 'bs4.BeautifulSoup'>文章标题: 原创 :--:http://yxh1157686920.blog.51cto.com/7743046/o" title="察看yxh1157686920所有原创文章URL:_ http://yxh1157686920.blog.51cto.comhttp://yxh1157686920.blog.51cto.com/7743046/o文章标题: 翻译 :--:http://yxh1157686920.blog.51cto.com/7743046/t" title="察看yxh1157686920所有翻译文章URL:_ http://yxh1157686920.blog.51cto.comhttp://yxh1157686920.blog.51cto.com/7743046/t文章标题: 转载 :--:http://yxh1157686920.blog.51cto.com/7743046/c" title="察看yxh1157686920所有转载文章URL:_ http://yxh1157686920.blog.51cto.comhttp://yxh1157686920.blog.51cto.com/7743046/c文章标题: Drupal7 Note-1:smtp模块+Gmail搭建邮件发送功能 :--:/7743046/1315279URL:_ http://yxh1157686920.blog.51cto.com/7743046/1315279文章标题: 初识 XSS 3  :--:/7743046/1314686URL:_ http://yxh1157686920.blog.51cto.com/7743046/1314686文章标题: Struts 2  漏洞解决办法 :--:/7743046/1314095URL:_ http://yxh1157686920.blog.51cto.com/7743046/1314095文章标题: 初识 XSS 2 :--:/7743046/1314092URL:_ http://yxh1157686920.blog.51cto.com/7743046/1314092文章标题: Drupal  函数实现分页机制 :--:/7743046/1313463URL:_ http://yxh1157686920.blog.51cto.com/7743046/1313463




原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 天正建筑画个直线找不到怎么办 Wi-Fi模块不支持多播怎么办? 魅族手机屏幕点不动怎么办 uc打开网页很慢怎么办 京东手机号码无法登录怎么办 织梦系统网站没收录怎么办 电脑开机出现一堆乱码怎么办 电脑文件夹出现乱码打不开怎么办 电脑出现f1和f2怎么办 电脑中韩文内容显示乱码怎么办 入驻shopee没身份证怎么办 液相色谱柱柱压降低怎么办 c18色谱柱堵了怎么办 色谱柱进空气了怎么办 宫颈评分只有3分怎么办 淘宝鞋子售后退货商家拒收怎么办 退货申通cp原因怎么办 运费险赔的少怎么办 淘宝卖游戏账号恶意退款怎么办 淘宝账号体检虚拟违规怎么办 京东虚拟单被骗怎么办 网络公选课挂科怎么办 淘宝评论被商家关闭怎么办? 皇冠车钥匙丢了怎么办 皇冠行李箱钥匙丢了怎么办 淘宝主推产品扣两分怎么办 淘宝直通车宝贝排查下架怎么办 滴滴车龄超过8年怎么办 购物车超120了怎么办 没发货申请退款卖家不处理怎么办 淘宝卖家帐号被骗了怎么办 淘宝网下单忘了用返利网怎么办 该地域无法观看此直播怎么办 宝宝喝了有活虫的奶粉怎么办 淘宝商家店铺状态异常怎么办 淘宝购物提示买家信息错误怎么办 苹果淘宝占用空间大怎么办 苹果手机淘宝占内存太大怎么办 苹果手机淘宝图标找不到了怎么办 苹果手机看淘宝很卡怎么办 苹果手机淘宝忘了密码怎么办