python_html页面中select和find的使用方法

4 篇文章 1 订阅
订阅专栏

一、准备工作

1、需要用到的网站

https://www.ivsky.com/tupian/songshulin_v64748/

2、需要使用的模块

pip install requests  
pip install beautifulsoup4
pip install lxml

二、获取对应标签信息

  • 首先我们先打开网站,按F12查看页面。如果我们想要获取图片的下载地址,那我们可以通过select和find方法来获取

在这里插入图片描述
1、select方法获取

  • 首先我们先获取整个页面信息
import requests
from bs4 import BeautifulSoup


def img():
    url = 'https://www.ivsky.com/tupian/songshulin_v64748/'  # 需要访问的地址
    res = requests.get(url)  # 访问地址
    soup = BeautifulSoup(res.text, "lxml")  # 定义一个Soup对象,lxml 解析器
    print(soup)


if __name__ == "__main__":
    img()

在这里插入图片描述

  • 通过select我们获取了页面中的所有img标签
    label = soup .select("img")  # # 搜索页面中所有的img标签,以列表的形式展示
    print(label)

在这里插入图片描述

  • 通过循环列表获取每条img标签
    for i in label:
        print(i)  # 循环列表获取每条img标签

在这里插入图片描述

  • 上面我们已经获取了每个img标签,下面我们将获取到图片的下载地址

完整代码

import requests
from bs4 import BeautifulSoup


def img():
    url = 'https://www.ivsky.com/tupian/songshulin_v64748/'  # 需要访问的地址
    res = requests.get(url)  # 访问地址
    soup = BeautifulSoup(res.text, "lxml")  # 定义一个Soup对象,lxml 解析器
    label = soup .select("img")  # 搜索页面中所有的img标签,以列表的形式展示
    for i in label:
        src = i['src']  # 获取图片下载地址
        print(src)  # 循环打印图片下载地址


if __name__ == "__main__":
    img()

在这里插入图片描述

2、find方法获取

  • 首先我们需要获取到所有图片的标签,下图就是选中所有图片的效果
    在这里插入图片描述
import requests
from bs4 import BeautifulSoup


def img():
    url = 'https://www.ivsky.com/tupian/songshulin_v64748/'  # 需要访问的地址
    res = requests.get(url)  # 访问地址
    soup = BeautifulSoup(res.text, "lxml")  # 定义一个Soup对象,lxml 解析器
    label = soup.find('ul', attrs={'class': 'pli'})  # 获取ul标签的class属性,find只能获取第一个数据
    print(label)


if __name__ == "__main__":
    img()

在这里插入图片描述

  • 下面我们要获取每张图片的标签,通过find_all获取所有的
    在这里插入图片描述
    a = label.find_all('li') #获取当前所有的li标签
    print(a)

在这里插入图片描述

  • 获取了所有li标签后,接下来我们要在li标签中找到img标签,并获取图片下载地址,

完整代码

import requests
from bs4 import BeautifulSoup


def img():
    url = 'https://www.ivsky.com/tupian/songshulin_v64748/'  # 需要访问的地址
    res = requests.get(url)  # 访问地址
    soup = BeautifulSoup(res.text, "lxml")  # 定义一个Soup对象,lxml 解析器
    label = soup.find('ul', attrs={'class': 'pli'})  # 获取ul标签的class属性,只获取第一个数据
    for i in label.find_all('li'):   # 获取当前所有的li标签
        a = i.find('img')  # 获取img标签
        print(a)
        print(a['src'])  # 获取下载地址


if __name__ == "__main__":
    img()

在这里插入图片描述

Python爬虫入门9:BeautifulSoup快速查找HTML内容
老猿Python
02-05 2026
本节介绍了BeautifulSoup查找类的主要方法,通过这些方法可以找到符合条件的html元素。本节文档老猿在BeautifulSoup官网的基础之上验证测试之后整理而成,文档结构大部分内容与官网内容,但有老猿验证之后的一些比较独特的内容。
html5的find函数,用示例说明filter()与find()的用法以及children()与find()的区别分析
weixin_33406440的博客
06-23 1124
jquery的find()方法与filter()方法对于初学者来说容易混淆,在这里对这两个方法通过一个小例子来进行比较和说明。旨在了解这两种方法的区别。html代码测试1测试2先看看find()方法$("div").find(".rain").css('color', '#FF0000');//等价于:$("div .rain").css('color','#ff0000');//也等价于:$("...
python爬取药品信息
07-26
使用Python爬取药品信息,可以按照以下步骤进行: 导入相关库:首先需要导入必要的Python库,如requests(用于发送HTTP请求)、BeautifulSoup(用于解析HTML内容)等。 发送请求:使用requests库的get()方法发送GET请求,将目标网页的URL作为参数传递给该方法。可以添加必要的请求头信息,如User-Agent等,以模拟浏览器发送请求。 解析网页内容:使用BeautifulSoup库将返回的网页内容进行解析,以便提取所需的药品信息。可以使用find_all()或select()等方法根据HTML标签和类名等选择器来定位药品信息所在的元素。 提取药品信息:根据网页的HTML结构,使用BeautifulSoup提供的方法和属性来提取药品的相关信息,如药品名称、规格、生产厂商等。 保存数据:可以将提取到的药品信息保存到本地文件或数据库,以备后续分析和处理。可以使用open()函数打开文件,并使用write()方法将数据写入文件,或使用数据库连接库来插入数据。 可选功能:根据需求,还可以添加其他功能,如分页爬取、使用代理IP提高爬取速度
python爬取微博评论
07-25
使用Python爬取微博评论,可以使用requests库发送HTTP请求获取网页内容,并使用BeautifulSoup库解析网页内容。以下是一个简单的描述: 导入相关库:首先需要导入必要的Python库,如requests(用于发送HTTP请求)、BeautifulSoup(用于解析HTML内容)等。 发送请求:使用requests库的get()方法发送GET请求,将目标微博的URL作为参数传递给该方法。可以添加必要的请求头信息,如User-Agent等,以模拟浏览器发送请求。 解析网页内容:使用BeautifulSoup库将返回的网页内容进行解析,以便提取评论数据。可以使用find_all()或select()等方法根据HTML标签和类名等选择器来定位评论所在的元素。 提取评论数据:根据微博页面HTML结构,使用BeautifulSoup提供的方法和属性来提取评论的相关信息,如评论内容、用户名、时间戳等。 保存数据:可以将提取到的评论数据保存到本地文件,以备后续分析和处理。可以使用open()函数打开文件,并使用write()方法将数据写入文件。 可选功能:根据需
Python爬虫——抓取网页并解析HTML
Bluestorm's Space
06-20 3686
CUHK上学期有门课叫做Semantic Web,课程project是要搜集整个系里面的教授信息,输入到一个系统里,能够完成诸如“如果选了A教授的课,因时间冲突,B教授的哪些课不能选”、“和A教授实验室相邻的实验室都是哪些教授的”这一类的查询。这就是所谓的“语义网”了啊。。。然而最坑爹的是,所有这些信息,老师并没有给一个文档或者数据库,全要靠自己去系主页上搜集。唯一的想法是写个爬虫,令人悲哀的
Python:selenium方法—2定位HTML元素
风暴之灵得博客
08-29 889
参见 https://www.cnblogs.com/yoyoketang/p/6557421.html 作者:上海悠悠 摘要 1、xpath,css是最重要的方法。 2、方法 前八种经常会用到的单数形式,返回页面元素。 1.id定位:find_element_by_id(self, id_) 2.name定位:find_element_by_name(self, name) 3....
html的find()函数,find()方法返回通过测试(函数内判断)的数组的第一个元素的值...
weixin_42501848的博客
06-29 1855
find()方法返回通过测试(函数内判断)的数组的第一个元素的值。当数组的元素在测试条件时返回 true 时, find()返回符合条件的元素,之后的值不会再调用执行函数。如果没有符合条件的元素返回undefined。Array.find()方法:注意: find() 对于空数组,函数是不会执行的。注意: find() 并没有改变数组的原始值。语法:array.find(function(cur...
html5的find函数,Loadrunnerweb_find和web_reg_find函数的使用与区别
weixin_35545176的博客
06-26 477
总结一下Loadrunner的检查点函数,主要介绍两个函数:web_find()和web_reg_find();这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:一、web_find()函数该函数的作用是“从HTML页面查找指定的文本字符串”常用参数及含义如下:1 web_find("web_find", //定义该查找函数的名称2   "RightOf=a", //定义查找字符...
Python爬虫HTML网页解析方法小结
m0_59162248的博客
03-25 5187
学过requests库的看到requests-html的api应该会很熟悉,使用方法基本一致,不同的是使用requests编写爬虫时,要先把网页爬取下来,然后再交给BeautifulSoup等一些html解析库,现在可以直接解析了。(4)requests-html 是比较新的一个库,高度封装且源码清晰,它直接整合了大量解析时繁琐复杂的操作,同时支持DOM解析和XPath解析两种方式,灵活方便,可以尝试。”**在csdn看到过一篇比较好的文章,讲的很实用,大家伙可以移步去看看,链接分享在下方。
python+html实现前后端数据交互界面显示
热门推荐
代码的女朋友的博客
03-15 3万+
最近刚刚开始学习如何将python后台与html前端结合起来,现在写一篇blog记录一下,我采用的是前后端不分离形式。 话不多说,先来实现一个简单的计算功能吧,前端输入计算的数据,后端计算结果,返回结果至前端进行显示。 1.python开发工具 我选用的是pycharm专业版,因为社区版本无法创建django程序 2.项目创建 第一步:打开pycharm,创建一个django程序 蓝圈圈起来的为自定义的名字,点击右下角的create可以创建一个django项目 如下图,圈起来的名字与上图相
python+selenium select下拉选择框定位处理方法
01-01
总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询; 二、直接定位(XPath) 使用Firebug找到需要定位到的元素,直接右键复制XPath,使用find_element_by_xpath定位; driver = ...
Machine Learning for OpenCV_Intelligent image processing with Python(2017).epub
12-24
Chapter 1, A Taste of Machine Learning, will gently introduce you to the different subfields of machine learning, and explain how to install OpenCV and other essential tools in the Python Anaconda ...
18个python爬虫selenium源代码学习例子
05-05
find_element.py form_study.py JavaScript_study.py js_element.py log_study mail_study mouse_study.py nohead_study.py PO_study select_study.py sleep_study.py unittest_study window_study.py ...
pythonhtml网页匹配查找
jianghuihong2012的专栏
10-24 2648
# -*- coding: utf-8 -*-import urllibimport urlparseimport HTMLParserimport rer=urllib.urlopen(u"http://v.youku.com/v_show/id_XNjA4Mzg2MDg4.html")content=r.fp.read()#valuetitle=re.findall(r'',content)s
html下拉框是否选,如何找到所有 HTML select 标签的选
weixin_32943807的博客
06-03 480
话不多说,咱就直奔主题吧,直接展示代码:1234512345以下就是js的部分:JQ:获取所有选的项(获取所有的select的选项需遍历载具体取相应的值)$('[name=n_select] :selected');$('.c_select option:selected');$('.c_select').find('option:selected');获取select的值(只返回第一个...
python解析本地html方法
kaiser099的博客
05-25 3529
a.先爬取主页的列表资料,其同义内容使用“@”符号连接,首先在for循环内给定一个值获取标签内的链接link=x.get('href'),接着使用sub方法指定删除link。b.通过def draw_base_list(doc)函数向二级详情函数传递Link参数爬取详细信息,为避免频繁访问主机,我们同样将详情页的源代码保存至本地并解析。Python爬虫每次运行时都会访问一次主机,为了避免增加主机访问负荷,一般都是在本地解析。c.将爬取下来的数据存入csv文件。1.将html文件本地保存。
python文本筛选html,从html页面的列表元素筛选数据
weixin_33272631的博客
03-26 643
是否需要使用字典取决于您自己,但是如果您选择使用字典,则最好为每个列表项单独使用一个字典,而不是为所有条目使用一个字典。在我建议你把所有的条目都存储在一个列表。下面的代码显示了两个建议,要么使用tuple来存储每个项目的不同信息位,要么使用字典。在如果您只想显示信息或将其写入文件,tuple解决方案会更快。在# Two possible ways of storing your data: a ...
html python 交互_pythonhtml交互详解
weixin_39928818的博客
02-23 7853
1.Jinji2模板引擎(Falsk内置模板引擎,来源与另一个框架Django)例:render_template()传模板以及入参,那么在模板可以直接通过{{}}来使用2.定义路由入参(入参类型)以及路由请求格式(路由默认只支持GET请求)例:通过表明只接收orderId为int类型的参数,请求格式由methods=['','']格式实现3.模板注释使用:{#注释内容#} 实现,快捷键:C...
基于JavaScript 如何实现爬山算法以及优化方案
最新发布
乐闻世界
06-10 1337
爬山算法(Hill Climbing Algorithm)是一种常见的启发式搜索算法,常用于解决优化问题。其核心思想是从一个初始状态出发,通过逐步选择使目标函数值增大的邻近状态来寻找最优解。接下来,我们将通过 JavaScript 实现一个简单的爬山算法,帮助大家理解其原理和应用。从一个初始状态开始。评估当前状态的目标函数值。在当前状态的邻居选择一个目标函数值更大的状态。如果找到了更优的邻居,则移动到该邻居并重复步骤2和步骤3。如果没有更优的邻居,则算法结束,当前状态即为局部最优解。
使用requests和BeautifulSoup库,可使用BeautifulSoup的find、find_all或selectselect_one进行html元素检索
04-06
并获取相应信息。 示例: 1. 使用requests库获取网页内容 ```python import requests response = requests.get('https://www.example.com') html = response.text ``` 2. 使用BeautifulSoup库解析html内容 ```python from bs4 import BeautifulSoup soup = BeautifulSoup(html, 'html.parser') ``` 3. 使用find或find_all方法查找元素 ```python # 查找第一个h1标签 h1 = soup.find('h1') # 查找所有p标签 p_list = soup.find_all('p') ``` 4. 使用selectselect_one方法查找元素 ```python # 查找所有class为example的div标签 div_list = soup.select('.example') # 查找第一个id为title的h1标签 h1 = soup.select_one('#title') ``` 5. 获取元素内容或属性 ```python # 获取h1标签内容 h1_text = h1.text # 获取p标签的href属性 p_href = p_list[0].get('href') ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • python之Tkinter使用详解 118952
  • Linux 挂载新磁盘详细教程 61629
  • python_split()函数使用方法 46893
  • python_将数据写入本地txt文本实现方法 29544
  • Python连接Mysql数据库 27808

分类专栏

  • 测试工具 1篇
  • 自动化测试
  • web篇 7篇
  • Android篇 2篇
  • Python3目录 1篇
  • 日常记录 11篇
  • Flask 模块 2篇
  • Tkinter 模块 6篇
  • Requests 模块 1篇
  • Pytest 模块 3篇
  • paho-mqtt 模块 2篇
  • PyInstaller 模块 3篇
  • WebSocket 模块 1篇
  • ConfigParser 模块 1篇
  • PyMySQL 模块 2篇
  • pymongo 模块 1篇
  • 阿里云DDNS 1篇
  • AES加密 1篇
  • 正则表达式 1篇
  • 爬虫学习 4篇
  • Shell命令 2篇
  • 系统功能 6篇
  • 读写Excel 2篇
  • Jmeter目录 14篇
  • Android目录 3篇
  • Windows目录 5篇
  • Linux目录 18篇
  • Docker相关 2篇
  • 网站环境搭建 3篇
  • MySQL自动部署 2篇
  • 数据库目录 3篇
  • 内网穿透 2篇
  • NAS目录 1篇
  • ESP8266 1篇

最新评论

  • Linux 部署SVN客户端及基本使用教程

    白炽一: 感谢干货

  • Python_获取京东商品数据写入Excel和可视化数据中

    2401_85077911: 可以爬上万条吗

  • Python_Selenium自动化测试详细教程

    2201_75794671: 想问一下,如果是没有打开新窗口,但是内容换了,句柄换没换,需要改frame吗

  • CentOS 7 部署Jellyfin详细教程

    小杨子2589: 可以用、楼主我可以转载你的文章吗表情包

  • Python之Appium 2自动化测试(Android篇)

    小生活,加油: 这个确定能运行吗?

大家在看

  • Java学习 - MySQL数据库中 变量 和 流程控制 实例 27
  • 我的父亲
  • 【C语言】快速排序(经典算法,建议收藏!!!) 1025
  • Shell中[ ],[[ ]]的区别 381
  • Dynamsoft.DotNet.BarcodeReader.Bundle-10.2.1100 481

最新文章

  • Linux自动重启系统脚本测试工具
  • Linux系统下使用Parted调整物理分区大小
  • 解决Linux根分区空间不足的方法:利用Home分区进行扩容
2024年7篇
2023年26篇
2022年16篇
2021年41篇
2020年18篇
2019年8篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

深圳SEO优化公司保定百度爱采购推荐抚州外贸网站建设报价南联外贸网站制作价格遂宁网站开发公司中山企业网站设计公司莱芜关键词排名多少钱大庆营销网站公司恩施关键词排名包年推广报价松岗建站推荐通化网站定制公司淮南英文网站建设多少钱那曲SEO按效果付费哪家好菏泽SEO按天计费推荐肇庆网站制作设计长治网站优化排名价格邯郸至尊标王推荐温州企业网站制作通化建站银川SEO按天收费多少钱株洲建站报价芜湖网站制作哪家好桂林建设网站哪家好延边建站报价雅安设计公司网站坂田网站优化软件哪家好思茅网站推广方案价格横岗推广网站多少钱贵阳网站优化软件价格塘坑建设网站哪家好昌吉推广网站价格歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化