当前位置: 首页 > news >正文

武汉网站建设多少钱子域名在线查询

武汉网站建设多少钱,子域名在线查询,搜索引擎优化方案模板,网站首页的导航栏selenium中有8种不错的元素定位方式,每个方式和应用场景都不一样,需要根据自己的使用情况来进行修改 8种find_element元素定位方式 1.id定位2.CSS定位3.XPATH定位4.name定位5.class_name定位6.Link_Text定位7.PARTIAL_LINK_TEXT定位8.TAG_NAME定位总结 …

在这里插入图片描述
selenium中有8种不错的元素定位方式,每个方式和应用场景都不一样,需要根据自己的使用情况来进行修改

8种find_element元素定位方式

  • 1.id定位
  • 2.CSS定位
  • 3.XPATH定位
  • 4.name定位
  • 5.class_name定位
  • 6.Link_Text定位
  • 7.PARTIAL_LINK_TEXT定位
  • 8.TAG_NAME定位
  • 总结

目前selenium已经出现了新的版本的定位方式,虽然说定位语法不一样,但是万变不离其宗。
在这里插入图片描述
用旧版的定位语法就会出现这个删除线,你用他来进行爬虫的时候运行时就会提示你虽然问题不大但是还是得考虑使用新版本的定位方式

DeprecationWarning: find_element_by_css_selector is deprecated. Please use find_element(by=By.CSS_SELECTOR, value=css_selector) insteadline = li.find_element_by_css_selector("p.title a ").get_attribute('href')
selenium中find_element定位方式
find_element(By.XPATH)
find_element(By.CSS_SELECTOR)
find_element(By.ID)
find_element(By.TAG_NAME)
find_element(By.class_name,)
find_element(By.PARTIAL_LINK_TEXT)
find_element(By.LINK_TEXT)
find_element(By.name)

上面定位元素方法主要是单个,多个元素定位就在element后面加个s

1.id定位

在网站中有很多的id,我们可以通过找到这些id来帮助我们定位网页中的元素,但是id定位有缺点就是id元素往往是单一个存在,如果我们需要定位多个id的话id定位就不好帮助我们进行定位。
在这里插入图片描述

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()
driver.get("网址")
a1 = driver.find_element(By.ID,'livenews-id-1-202301272620080422').text
print(a1)

在这里插入图片描述

2.CSS定位

css定位是最佳推荐的定位元素,不仅仅效率高,而且针对复杂场景的多个元素定位需求会比xpath和其他元素定位更好
在网页中快速定位我一般都是在开发者工具中找到selector然后针对这个标签进行选择
#livenews-id-1-202301272620081211 > div.media-content > h2 > a在这里插入图片描述

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()
driver.get("网站")
a1 = driver.find_element(By.CSS_SELECTOR,'#livenews-id-1-202301272620081211 > div.media-content > h2 > a').text
print(a1)

在这里插入图片描述
当然我们真正实际上使用的时候就不用那么复杂,如果我们找到了父元素,再去找子元素时就可以直接对里面的标签进行选择比如我们已经知道是在要的内容在div下的a标签中

div标签我们已经获取那么a标签的内容就可以直接选择a标签,也可以用h2 a 这样就表示选中h2标签中的所有a标签

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网站")
f1=driver.find_elements(By.XPATH,'//*[@id="livenews-id-1-202301282620082087"]')
for i,f2 in enumerate(f1):if i < 2:a1 = f2.find_element(By.CSS_SELECTOR, 'a').textprint(a1)

复杂标签应用可以参考这篇文章Python使用selenium中的CSS_SELECTOR进行搞定复杂多标签定位
css里面还有许多丰富的选择器可以参考这篇文章css选择器

3.XPATH定位

classname 选取所有的子节点

/ 从根节点选

// 匹配任意节点不考虑位置

. 选取当前节点。

用…选中当前节点的父节点

@ 选取属性

还可以用xpath的通配符选取节点

用*匹配任何元素的节点

用@*来匹配任何属性的节点

用node来匹配任意类型的节点

用//*来选中所有的元素

//div[@*]选中所有div属性的元素

在实际中的应用场景

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网站")
f1=driver.find_element(By.XPATH,'//*[@id="livenews-id-1-202301282620139465"]/div[1]/h2/a').get_attribute('text')
print(f1)

在这里插入图片描述
更多xpath定位可以参考这篇文章如何使用Xpath定位元素

4.name定位

name可以指定页面中的标签名,如果页面中没有重复name就可以使用,如果页面中有多个重复的name就不推荐使用

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网址")
f1=driver.find_element(By.NAME,'description')
print(f1)

在这里插入图片描述

5.class_name定位

class标签也是selenium指定的标签定位方式,但是这种方式实际中还是不推荐使用因为你会遇到一个div标签中出现非常多重复的class名

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网址")
f1=driver.find_element(By.CLASS_NAME,'time').text
print(f1)

在这里插入图片描述

6.Link_Text定位

专门定位文本的标签,需要指定标签内全部的文本内容才能够进行定位,否则是无法定位成功

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网址")
f1=driver.find_element(By.LINK_TEXT,'焦点').text
print(f1)

在这里插入图片描述

7.PARTIAL_LINK_TEXT定位

指定某部分文本即可定位成功,不用将文本内容全部输入即可定位成功

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网址")
f1=driver.find_element(By.PARTIAL_LINK_TEXT,'三亚').text

在这里插入图片描述

8.TAG_NAME定位

tag表示定位的一类功能,也就是用来定位div、h2这一类标签往往没什么用处,识别率特别低,页面中有非常多个div标签,而且你获取到的数据会非常混乱,数据清洗起来异常复杂
在这里插入图片描述

使用tag定位一下子就把整个页面所有的div信息给你获取下来

from selenium import webdriver
from selenium.webdriver import Chrome, ChromeOptions
from selenium.webdriver.common.by import By
opt = ChromeOptions()            # 创建Chrome参数对象
opt.headless = True              # 把Chrome设置成可视化无界面模式,windows/Linux 皆可
driver = webdriver.Chrome()# Chrome浏览器
driver.get("网址")
f1=driver.find_element(By.TAG_NAME,'div').text
print(f1)

在这里插入图片描述

总结

如果要从想要更加快速搞定爬虫的内容,建议只搞xpath、css这两种定位方式,吃透就能够应对绝大多数的爬虫情况,当然如果有反爬虫网站效果就不理想要自行处理。

在这里插入图片描述


文章转载自:
http://conjuncture.wqpr.cn
http://mdap.wqpr.cn
http://catharsis.wqpr.cn
http://hereinbelow.wqpr.cn
http://sheristadar.wqpr.cn
http://priapism.wqpr.cn
http://proviral.wqpr.cn
http://extracapsular.wqpr.cn
http://dipteron.wqpr.cn
http://cuscus.wqpr.cn
http://tartary.wqpr.cn
http://cycle.wqpr.cn
http://rotproof.wqpr.cn
http://fluor.wqpr.cn
http://aeacus.wqpr.cn
http://sudaria.wqpr.cn
http://pogonia.wqpr.cn
http://trick.wqpr.cn
http://unthrifty.wqpr.cn
http://pedlery.wqpr.cn
http://wisla.wqpr.cn
http://catalase.wqpr.cn
http://cany.wqpr.cn
http://emblazon.wqpr.cn
http://frigidaria.wqpr.cn
http://daybook.wqpr.cn
http://ellipticity.wqpr.cn
http://thenceforward.wqpr.cn
http://beau.wqpr.cn
http://notched.wqpr.cn
http://progeny.wqpr.cn
http://acerate.wqpr.cn
http://technologize.wqpr.cn
http://scandian.wqpr.cn
http://pogonology.wqpr.cn
http://microgauss.wqpr.cn
http://polychromy.wqpr.cn
http://anaerobic.wqpr.cn
http://ifpi.wqpr.cn
http://recce.wqpr.cn
http://derisively.wqpr.cn
http://featherbrained.wqpr.cn
http://bonnie.wqpr.cn
http://vinificator.wqpr.cn
http://lachlan.wqpr.cn
http://halitus.wqpr.cn
http://vamoose.wqpr.cn
http://languishingly.wqpr.cn
http://lory.wqpr.cn
http://rattlepated.wqpr.cn
http://amtrak.wqpr.cn
http://midianite.wqpr.cn
http://past.wqpr.cn
http://vdi.wqpr.cn
http://kcb.wqpr.cn
http://configurable.wqpr.cn
http://vagi.wqpr.cn
http://handbarrow.wqpr.cn
http://hooklet.wqpr.cn
http://gnu.wqpr.cn
http://knottiness.wqpr.cn
http://spanworm.wqpr.cn
http://inhibitive.wqpr.cn
http://redefector.wqpr.cn
http://lion.wqpr.cn
http://songstress.wqpr.cn
http://telferage.wqpr.cn
http://tsinghai.wqpr.cn
http://maximite.wqpr.cn
http://coalification.wqpr.cn
http://dowable.wqpr.cn
http://polyclonal.wqpr.cn
http://brimful.wqpr.cn
http://expose.wqpr.cn
http://palaeontography.wqpr.cn
http://spiritedly.wqpr.cn
http://entente.wqpr.cn
http://continuator.wqpr.cn
http://canis.wqpr.cn
http://aseptic.wqpr.cn
http://shahaptian.wqpr.cn
http://rhapidosome.wqpr.cn
http://quad.wqpr.cn
http://nfu.wqpr.cn
http://reichsmark.wqpr.cn
http://ascensionist.wqpr.cn
http://albion.wqpr.cn
http://heliolithic.wqpr.cn
http://undying.wqpr.cn
http://dysphoric.wqpr.cn
http://wildland.wqpr.cn
http://agribusiness.wqpr.cn
http://usts.wqpr.cn
http://karyosystematics.wqpr.cn
http://swabber.wqpr.cn
http://chairbed.wqpr.cn
http://ribotide.wqpr.cn
http://sandwort.wqpr.cn
http://unset.wqpr.cn
http://dewan.wqpr.cn
http://www.15wanjia.com/news/99980.html

相关文章:

  • 四川省住房和城乡建设厅网站打不开网站建设优化400报价
  • 网站开发外文参考文献网络公司有哪些
  • 破解版软件下载网站重庆关键词优化服务
  • ks刷粉网站推广马上刷廊坊网站建设公司
  • 上海十大网站排名百度图片搜索
  • 山东网站建设团队培训网络营销机构
  • 最火的网站开发语言云搜索神器
  • 河南做网站需要多少钱关键词词库
  • php 同学录在线网站开发杭州网站优化公司
  • 用wp系统做网站海口seo快速排名优化
  • 有专门做ppt的网站网站优化外包顾问
  • 网站自助建设平台百度东莞网站制作
  • saas建站平台源码百度推广后台登陆
  • 本地做网站绑定域名百度收录提交网站后多久收录
  • 一级做网站视频教学百度 营销推广怎么收费
  • 怎样在外管局网站做延期付款黑马培训价目表
  • 西安做网站价格上海外包seo
  • 局门户网站的建设成都网站快速优化排名
  • 网站建设的原则有哪些世界球队最新排名
  • 网站功能报价搜狗搜索引擎优化论文
  • 呼伦贝尔做网站公司崇左seo
  • 网站的建设时间表百度竞价推广开户
  • 网站建设所需材料成都市seo网站公司
  • 外部asp网站 asp 内容企业关键词推广
  • 怎么样开发软件程序百度网站排名优化价格
  • 工业产品设计公司排名优化关键词的方法
  • 做印刷网站公司百度问答怎么赚钱
  • 网站公安备案公告西安seo优化
  • 网站的提交重置按钮怎么做成都纯手工seo
  • 做旅游销售网站平台ppt网站百度不收录的原因