Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Selenium和Python获取玻璃门评级_Python_Selenium_Xpath_Css Selectors_Webdriver - Fatal编程技术网

如何使用Selenium和Python获取玻璃门评级

如何使用Selenium和Python获取玻璃门评级,python,selenium,xpath,css-selectors,webdriver,Python,Selenium,Xpath,Css Selectors,Webdriver,我试图提取评级编号的代码。我得到的错误指数超出了界限,我需要得到评级和次级评级 from selenium import webdriver import pandas as pd import time import re init_url = 'https://www.glassdoor.co.in/Reviews/DXC-Technology-Reviews- E1603125.htm' driver = webdriver.Chrome() driver.maximize_wind

我试图提取评级编号的代码。我得到的错误指数超出了界限,我需要得到评级和次级评级

from selenium import webdriver
import pandas as pd
import time
import re

init_url = 'https://www.glassdoor.co.in/Reviews/DXC-Technology-Reviews- 
E1603125.htm'

driver = webdriver.Chrome()
driver.maximize_window()
driver.get(init_url)
time.sleep(5)

i=0
while(i< 11):
    rate1 = driver.find_elements_by_xpath("//*[@class='rating']")
    rate = driver.find_element_by_xpath("//input[@title='3.0']")[i]    
    print(rate.text)
    i+=1
从selenium导入webdriver
作为pd进口熊猫
导入时间
进口稀土
初始化url=https://www.glassdoor.co.in/Reviews/DXC-Technology-Reviews- 
E1603125.htm'
driver=webdriver.Chrome()
驱动程序。最大化_窗口()
获取驱动程序(初始化url)
时间。睡眠(5)
i=0
而(i<11):
rate1=驱动程序。通过xpath(“/*[@class='rating']”)查找元素
rate=driver.find_element_by_xpath(//input[@title='3.0'])[i]
打印(rate.text)
i+=1

要提取评级编号,可以使用以下任一解决方案:

  • xpath

    rating = driver.find_element_by_xpath("//div[@class='ratingsSummary cf']//span[@class='bigRating strong margRtSm h2']").get_attribute("innerHTML")
    
  • css\u选择器

    rating = driver.find_element_by_css_selector("div.ratingsSummary.cf span.bigRating.strong.margRtSm.h2").get_attribute("innerHTML")
    

您应该阅读以下元素的文本:-

<span class="bigRating strong margRtSm h1">3.3</span>
控制台输出-

Work/Life Balance - 2.0
Culture &amp; Values - 2.0
Career Opportunities - 3.0
Comp &amp; Benefits - 3.0
Senior Management - 2.0
Work/Life Balance - 5.0
Culture &amp; Values - 3.0
Career Opportunities - 4.0
Comp &amp; Benefits - 2.0
Senior Management - 2.0
Work/Life Balance - 3.0
Culture &amp; Values - 3.0
Career Opportunities - 3.0
Comp &amp; Benefits - 3.0
Senior Management - 3.0
Work/Life Balance - 5.0
Culture &amp; Values - 5.0
Career Opportunities - 5.0
Comp &amp; Benefits - 2.0
Senior Management - 2.0
Work/Life Balance - 3.0
Culture &amp; Values - 3.0
Career Opportunities - 2.0
Comp &amp; Benefits - 2.0
Senior Management - 1.0
Work/Life Balance - 3.0
Culture &amp; Values - 3.0
Career Opportunities - 4.0
Comp &amp; Benefits - 5.0
Senior Management - 2.0
Work/Life Balance - 3.0
Culture &amp; Values - 4.0
Career Opportunities - 3.0
Comp &amp; Benefits - 2.0
Senior Management - 3.0

请检查新链接以获得次级评级,这很难找到bcoz。它没有列出任何变量,只是星号值。谢谢,先生,但是有没有办法获得次级评级?1.工作/生活平衡2。文化与价值观3。职业机会4。薪酬福利5。高级管理层请检查新链接以获得次级评级,这很难找到bcoz,因为它没有列出任何变量,只有星号值
from selenium import webdriver
import time
import re

driver = webdriver.Chrome(executable_path=r'//path')
init_url = 'https://www.glassdoor.co.in/Reviews/DXC-Technology-Reviews-E1603125.htm'

driver.get(init_url)
driver.maximize_window()
time.sleep(5)
i=1
count = len(driver.find_elements_by_xpath("//span[@class='rating']/span[@class='value-title']"))
print count
while(i<= count):
    rate = driver.find_element_by_xpath("(//span[@class='rating']/span[@class='value-title'])[" + str(i) + "]")
    print(rate.get_attribute("title"))
    i+=1
count = len(driver.find_elements_by_xpath("//ul[@class='undecorated']//div[@class='minor']"))
while(i<= count):
    sub_rating = driver.find_element_by_xpath("(//ul[@class='undecorated']//div[@class='minor'])["  + str(i) + "]/following-sibling::span")
    sub_rating_title = driver.find_element_by_xpath("(//ul[@class='undecorated']//div[@class='minor'])["  + str(i) + "]")
    print(sub_rating_title.get_attribute("innerHTML") , "-" , sub_rating.get_attribute("title"))
    i+=1
Work/Life Balance - 2.0
Culture &amp; Values - 2.0
Career Opportunities - 3.0
Comp &amp; Benefits - 3.0
Senior Management - 2.0
Work/Life Balance - 5.0
Culture &amp; Values - 3.0
Career Opportunities - 4.0
Comp &amp; Benefits - 2.0
Senior Management - 2.0
Work/Life Balance - 3.0
Culture &amp; Values - 3.0
Career Opportunities - 3.0
Comp &amp; Benefits - 3.0
Senior Management - 3.0
Work/Life Balance - 5.0
Culture &amp; Values - 5.0
Career Opportunities - 5.0
Comp &amp; Benefits - 2.0
Senior Management - 2.0
Work/Life Balance - 3.0
Culture &amp; Values - 3.0
Career Opportunities - 2.0
Comp &amp; Benefits - 2.0
Senior Management - 1.0
Work/Life Balance - 3.0
Culture &amp; Values - 3.0
Career Opportunities - 4.0
Comp &amp; Benefits - 5.0
Senior Management - 2.0
Work/Life Balance - 3.0
Culture &amp; Values - 4.0
Career Opportunities - 3.0
Comp &amp; Benefits - 2.0
Senior Management - 3.0