python之BeautifulSoup之二 带属性值的抓取(find_all('tag', attrs={'class':'value'})

2023-05-16

系统:Windows/python 2.7.11

利用BeautifulSoup库抓取页面的一些标签TAG值

再抓取一些特定属性的值

示例标签:

<cc>            
<div id="post_content_79076951035" class="d_post_content j_d_post_content ">            进来呀<br>都是自己喜欢的<br>拿图就走你是狗
<br><img class="BDE_Image" src="http://imgsrc.baidu.com/forum/w%3D580/sign=f4a2042b3c87e9504217f3642039531b/55f8e6cd7b899e514d1131fc44a7d933c9950db8.jpg" size="20418" height="852" width="480">
<br><img class="BDE_Image" src="http://imgsrc.baidu.com/forum/w%3D580/sign=914d48d14d36acaf59e096f44cd88d03/6a57b319ebc4b745190bbcfec9fc1e178b8215b8.jpg" size="12400" height="600" width="400">
<br><img class="BDE_Image" src="http://imgsrc.baidu.com/forum/w%3D580/sign=522fecd8bca1cd1105b672288910c8b0/6c318744ebf81a4cfbfce421d12a6059242da60a.jpg" size="21266" height="852" width="479"></div>
<br>
</cc>

===============================以下为代码部分==================================

#coding=utf-8
import urllib2
from bs4 import BeautifulSoup
def getImg(url):
    html = urllib2.urlopen(url)
    page = html.read()
    soup = BeautifulSoup(page, "html.parser")
    for s in soup.find_all('cc'): #获取标签为cc的tag值,得到结果:[<cc>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx........</cc>,<cc>....</cc>]集合
        if 'img' not in str(s): #判断,若获取的cc值里面没有img标签,则结束本次循环
            continue
        d = s.find_all('img', attrs={'class':'BDE_Image'})  #获取标签为img,其中一个属性:class="BDE_Image" 所有数据,放进集合
        lenth = len(d)   #集合的个数
        for i in range(lenth): 
            print d[i].attrs['src']    #打印,属性为src的内容,机后面的http://xxxxxxxxxxxxxxxxx

url = 'http://tieba.baidu.com/p/4161148236?fr=frs'
getImg(url)

========================================end========================================

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python之BeautifulSoup之二 带属性值的抓取(find_all('tag', attrs={'class':'value'}) 的相关文章

随机推荐

  • 学会Retrofit+OkHttp+RxAndroid三剑客的使用,让自己紧跟Android潮流的步伐

    转载请标明出处 xff1a http blog csdn net iamzgx article details 51607387 本文出自 iGoach的博客 概括 在上一篇博客android网络框架OkHttp之get请求 xff08 源
  • 手动缓存Retrofit+OkHttp响应体,不再局限于Get请求缓存

    转载请标明出处 xff1a http blog csdn net iamzgx article details 51764848 本文出自 iGoach的博客 概括 这篇博客是接着上一篇博客学会Retrofit 43 OkHttp 43 R
  • 哪个才是Android工程构建时的gradle版本?gradle-wrapper.properties还是build.gradle的buildscript说了算?

    先说谜底 xff0c gradle wrapper properties说了算 xff08 1 xff09 build gradle的buildscript里的buildscript dependencies的com android too
  • cocos2d-js之入门篇

    转载请标明出处 xff1a http blog csdn net iamzgx article details 54232599 本文出自 iGoach的博客 cocos2d js xff0c 至今日 xff0c 也马马虎虎算接触了一个星期
  • 微信小程序-入门篇

    转载请标明出处 xff1a http blog csdn net iamzgx article details 72615506 本文出自 iGoach的博客 前言 2017年1月9日 xff0c 微信小程序发布 这也标志着FaceBook
  • 使用OkHttp上传图片

    简介 上传图片是一个APP的常见功能 xff0c 可以是通过OOS上传到阿里云 xff0c 也可以直接上传到Server后台 xff0c OOS有提供相应的SDK xff0c 此处忽略 下面通过OkHttp来实现图片的上传 代码 直接上代码
  • 简单说说如何把json或者txt文件转换为db

    前言 最近在Github上找到一个中国城市的json文件 xff0c 虽然也有db文件 xff0c 但是想通过这个json文件生成自己的数据库表 下面就简单来转换成自己的数据库 准备json 在Github找到一个下面json表 34 sp
  • 2018年7月面试记录

    MRCM 聊天缓存如何实现的聊天重发如何实现如何保持长连接心跳简述TCP协议写一个自己最擅长的设计模式 ZHYT finish会立马销毁activity吗view的生命周期activity结束了HandlerQueue如何处理Handler
  • Android面向AOP之AspectJ的使用篇

    前言 AOP xff0c 它不是一门新语言 xff0c 是一种面向切面的思想 它主要的作用是把一些具有相同属性或者相同功能的代码抽离出来形成一个切面 xff0c 从而实现面向切面编程 xff01 而AspectJ就是基于Java语言实现AO
  • 仿拉勾首页之Behavior的学习

    前言 最近在找工作 xff0c 于是打开拉勾 xff0c 看了看首页 xff0c 交互做的还是不错的 先来看看拉勾效果 然后最终实现的效果 布局是图片直接用 xff0c 所以会失真 实现思路 首先这个是一个MD的效果 xff0c 可以使用自
  • Java中Collections类方法常用合集

    目录 1 Collections sort list 2 Collections reverse list 3 Collections shuffle list 4 Collections swap List list int i int
  • 解决Slf4j日志不打印问题

    日志不打印的问题 xff0c 很让人头疼 xff0c 也是我们经常遇到的问题 日常站点状态巡检时发现有异常日志 xff0c 定位到日志位置 xff0c 看其上线文自定义输出的日志时却发现 xff0c 自己加的日志都没输出 排查了一下初步定位
  • Android Studio 配置Gradle总结

    一 xff0c 问题 xff1a 换个新电脑安装完Android Sutdio第一次打开一个工程巨慢怎么办 xff1f 手动配置Gradle Home为什么总是无效 明明已经下载了Gradle xff0c 配置了gradle home 为什
  • android 指纹识别 之 BiometricPrompt的简单使用教程

    1 使用android api 28的sdk创建一个新的项目 创建完成后 xff0c 在build gradle中查看是否正确 2 在AndroidManifest xml中添加用户权限 lt uses permission android
  • Linux常用命令

    expect except是一种自动交互语言 xff0c 能实现在shell脚本中为scp和ssh等自动输入密码自动登录 span class token comment usr bin expect span span class tok
  • 使用 Acegi 保护 Java 应用程序,第 5 部分: 保护 JSF 应用程序中的 JavaBean

    Bilal Siddiqui 在这篇文章中总结了 本系列 xff0c 演示了如何用 Acegi 在 JSF 应用程序中保护对 JavaBean 的访问 可以使用多种方式配置安全 bean xff0c 包括直接在 JSF 标签中使用受 Ace
  • baidu

    1 hashmap的底层原理 和hashtable的区别 put xff1a 对key的hashCode做hash操作 xff0c 然后再计算在bucket中的index xff1b 如果没碰撞直接放到bucket里 xff1b 如果碰撞了
  • ssh 带端口登录

    ssh span class token operator span p 端口号 root 64 ip
  • 域名+解析+GitHub来搭建自己的个人网站

    域名 43 解析 43 GitHub来搭建自己的个人网站 标签 xff1a GitHub使用技巧 网站搭建 版权声明 xff1a 本文为 64 icurious 的原创文章 xff0c 可以转载 xff0c 但请务必注明作者和出处 xff0
  • python之BeautifulSoup之二 带属性值的抓取(find_all('tag', attrs={'class':'value'})

    系统 xff1a Windows python 2 7 11 利用BeautifulSoup库抓取页面的一些标签TAG值 再抓取一些特定属性的值 示例标签 xff1a lt cc gt lt div id 61 34 post conten