技术标签: python判断html标签是否存在
我正在写一个脚本,想要检查html中是否存在特定的类.
from bs4 import BeautifulSoup
import requests
def makesoup(u):
page=requests.get(u)
html=BeautifulSoup(page.content,"lxml")
return html
html=makesoup('https://www.yelp.com/biz/soco-urban-lofts-dallas')
print("3 star",html.has_attr("i-stars i-stars--large-3 rating-very-large")) #it's returning False
res = html.find('i-stars i-stars--large-3 rating-very-large")) #it's returning NONE
请指导我如何解决这个问题?如果我得到冠军(title =“3.0星级”),这对我也有用.控制台HTML 的屏幕截图
解决方法:
has_attr是一种检查元素是否具有所需属性的方法. class是一个属性,i-stars i-stars – large-3 rating-very-large是它的值.
find期望CSS selectors,而不是类值.所以你应该使用html.find(‘div.i-stars.i-stars – large-3.rating-very-large’).这是因为您正在寻找包含所有这些类的div.
标签:python,web-scraping,beautifulsoup,html
来源: https://codeday.me/bug/20190706/1393194.html
文章浏览阅读1.1k次。 尝试过很多办法去关闭自动更新,但是过几天总是会卷土重来。虽然自动更新更加安全,但对于我们日常用户来说,自动更新总是带来很多麻烦。那么,应当如何有效地关闭自动更新呢? 1,按下win+r键打开“运行”窗口,输入“gpedit.msc”打开组策略。如图:2,依次点击“计算机配置-管理模板-Windows组件”,如图:3,在右边找到“Windows Update”(win..._笔记本wim7总自动更新怎么关闭
文章浏览阅读1k次。找到Web站点对应的应用程序池,“应用程序池” → 找到对应的“应用程序池” → 右键“高级设置...” 一、一般优化方案 1、基本设置 [1] 队列长度: 默认值1000,将原来的队列长度改为 65535。 [2] 启动32位应用程序:默认值False,改为True, 否则安装一些32的组建或32位的php都会出错。 [3] 托管管道模式_设置iis进程模型
文章浏览阅读5.9k次,点赞9次,收藏44次。<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title>一个可以开门的机柜</title> <style> *{ margin:0; pa..._three.js 机房 源码
文章浏览阅读2.3k次,点赞7次,收藏11次。本篇文章讲述的是对Qt QTextEdit控件在使用中获得的一些心得和遇到的一些问题以及解决办法。采用了一些前辈的方法(在此不再一一列出地址,时间久远具体链接找不到了,如有需要请搜索其关键字,抱歉了)并加以改进的,算是在此记录自己成长的过程,分享出来希望能帮助到有需要的人。_qtextedit qpixmap
文章浏览阅读4.5w次,点赞14次,收藏64次。shell中的比较运算符:-eq //等于-ne //不等于-gt //大于 (greater)-lt //小于(less)-ge //大于等于-le //小于等于命令的逻辑关系:在 linux 中命令执行状态:0 为真,其他为假 。$? 是显示最后命令的退出状态,0 表示没有错误,其..._shell -ne
文章浏览阅读263次。lower_bound与upper_bound从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end。通过返回的地址减去起始地址begin,得到找到数字在数组中的下标。upper_bound(begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于num的数字,找到返回该数字的地址,不存在则返回end。通过返回的地址减去起始地址begin,得到找到数字在数组中的下标。
文章浏览阅读121次。verilog代码编写指南变量及信号命名规范 1. 系统级信号的命名。 系统级信号指复位信号,置位信号,时钟信号等需要输送到各个模块的全局信号;系统信号以字符串Sys开头。 2. 低电平有效的信号后一律加下划线和字母n。如:SysRst_n;FifoFull_n; 3. 经过锁存器锁存后的信号,后加下划线和字母r,与锁存前的信号区别 如CpuRamRd信号,经锁存后应..._verilog筛选
文章浏览阅读803次,点赞8次,收藏12次。/ 定义双精度变量。使用 printf() 与 %e 输出双精度数。C 语言实例 - 输出双精度(double)数。printf("d 的值为 %le", d);// 声明双精度变量。d 的值为 1.200123e+01。_c语言中整型变量计算输出双精度
文章浏览阅读838次。OracleGoldenGate,简称OGG,是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。OracleGoldenGate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,从而在可以在应急系统、在线报表、实时数据仓库供应、交易..._cpu 12c*2 6626
文章浏览阅读579次。通过JSP网页链接MySQL数据库,读取数据库显示在JSP网页通过JSP网页链接MySQL数据库,读取数据库显示在JSP网页通过JSP网页连接MySQL数据库,从MySQL数据库中读出一张表并显示在JSP网页中一. 安装所需软件安装java和tomcat,建立JSP网页最基础的软件;安装MySQL数据库(下载地址:https://www.mysql.com;安装Navicat Premium来查看..._mysql数据如何挂到网页
文章浏览阅读3.2k次。OpenWRT 系统的 gpio 可用配置为键盘输入、led输出、控制输出等,以 mt7621 为例,相互关系说明如下:第一步 查看设备树配置文件/OpenWrt/mtk7621-19.07$ ls target/linux/ramips/dts/ | grep 7621AP-MT7621A-V60.dtsMT7621.dtsmt7621.dtsi #(1) mt7621 芯片资源的基本配置文件U7621-06-256M-16M.dts # (3)_openwrt gpio dts
文章浏览阅读3.7k次。上半年国内手机市场的新机数量明显减少,但也出现了一些可喜的变化,比如一加7 Pro使用2K分辨率90Hz刷新的屏幕,比如低亮度无频闪的DC调光。相比前一项,DC调光更值得关注,因为这是在网友的驱动下出现的改变。支持DC调光可以让屏幕在低亮度下无频闪,减少对眼睛的伤害。魔法师蛋小丁提出来之后,OPPO首先响应,随后蔓延至整个手机行业。到现在为止,上半年发布的旗舰手机大都支持DC调光,即使硬件不支持,..._华为mate20pro更新鸿蒙系统后有月亮模式吗