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

网站开发及app开发都需要多少钱以品牌推广为目的的广告网络平台

网站开发及app开发都需要多少钱,以品牌推广为目的的广告网络平台,采集类淘宝客网站怎么做,番禺做网站哪家好selenium中有8种不错的元素定位方式#xff0c;每个方式和应用场景都不一样#xff0c;需要根据自己的使用情况来进行修改 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(byBy.CSS_SELECTOR, valuecss_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(网站) f1driver.find_elements(By.XPATH,//*[idlivenews-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(网站) f1driver.find_element(By.XPATH,//*[idlivenews-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(网址) f1driver.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(网址) f1driver.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(网址) f1driver.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(网址) f1driver.find_element(By.PARTIAL_LINK_TEXT,三亚).text8.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(网址) f1driver.find_element(By.TAG_NAME,div).text print(f1)总结 如果要从想要更加快速搞定爬虫的内容建议只搞xpath、css这两种定位方式吃透就能够应对绝大多数的爬虫情况当然如果有反爬虫网站效果就不理想要自行处理。
http://www.w-s-a.com/news/790823/

相关文章:

  • 企业建站系统信息远象建设 网站
  • 移动建站平台物业管理系统app
  • 济南网站建设多少钱郑州公司做网站
  • 在阿里云网站建设wordpress模板如何修改字体
  • 网站推广方案设计购物网站模块例子
  • 潍坊网站定制公司网站图片放大特效怎么做的
  • 淘宝店铺买卖湘潭seo优化价格
  • 最好的网站建设用途合肥企业网站建设
  • 计算机编程与网站建设好玩的网页传奇
  • 商务网站建设找哪家本地推广找哪些网站
  • 手机h5网站企业网站管理系统的运维服务
  • 南京建设网站公司网站游戏怎么制作
  • 成都建站程序苏州市建设局招标网站首页
  • 自助建网站市场公司起名大全2020最新版的
  • dede网站模板北京 网站开发 大兴
  • 网站优化师招聘建设牌安全带官方网站
  • 南京网站建设网站做视频网站用什么格式
  • 普陀做网站价格wordpress接入qq互联
  • 网站2级页面怎么做杭州哪家做外贸网站
  • 做了静态网站怎么显示在互联网上营销策划与运营方案
  • 常见的英文网站国内军事新闻大事件
  • 傻瓜式做网站程序微信怎么开公众号
  • c2c电商网站wordpress仿36kr主题
  • 网站建设公司开发免费图纸网站
  • 一个网站页面设计多少钱做预算查价格的网站是哪个
  • 鳌江哪里有做网站百度短链接在线生成
  • 有没有什么做水利资料的网站杭州建设信用平台
  • 电子商务网站建设及推广方案论文wordpress无法显示文章
  • 建设工程监理网站前端和后端分别需要学什么
  • 公司网站制作效果国内最好的在线网站建设