简答题
2、使用Selenium模拟浏览器访问淘宝首页(网址https://www.taobao.com/),通过selenium库提供的常用方法定位节点,输出爬取到的节点和节点信息。
2、使用Selenium模拟浏览器访问淘宝首页(网址https://www.taobao.com/),通过selenium库提供的常用方法定位节点,输出爬取到的节点和节点信息。
附录:
答案解析
正确答案:答案:
from selenium import webdriver #导入webdriver模块
#初始化Google Chrome浏览器对象,并赋值给browser
browser = webdriver.Chrome()
#请求淘宝首页,打开一个浏览器窗口
browser.get('https://www.taobao.com/')
#输出id属性值为“q”的节点
print('通过id属性值“q”定位节点:')
print(browser.find_element_by_id('q'))
#输出class属性值为“btn-search”的节点
print('通过class属性值“btn-search”定位节点:')
print(browser.find_element_by_class_name('btn-search'))
#输出使用XPath定位的id属性值为“q”的节点
print('通过XPath定位id属性值为“q”的节点:')
print(browser.find_element_by_xpath('//input[@id="q"]'))
#输出使用CSS选择器定位的class属性值为“btn-search”的节点
print('通过CSS选择器定位class属性值为“btn-search”的节点:')
print(browser.find_element_by_css_selector('.btn-search'))
#定位class属性值为“btn-search”的节点,并赋值给element
element = browser.find_element_by_class_name('btn-search')
#输出element的type属性值
print('class属性值为“btn-search”节点的type属性值:', element.get_attribute("type"))
#输出element的文本
print('class属性值为“btn-search”节点的文本:', element.text)
#输出element的节点名
print('class属性值为“btn-search”节点的节点名:', element.tag_name)
#输出element的id
print('class属性值为“btn-search”节点的id:', element.id)
from selenium import webdriver #导入webdriver模块
#初始化Google Chrome浏览器对象,并赋值给browser
browser = webdriver.Chrome()
#请求淘宝首页,打开一个浏览器窗口
browser.get('https://www.taobao.com/')
#输出id属性值为“q”的节点
print('通过id属性值“q”定位节点:')
print(browser.find_element_by_id('q'))
#输出class属性值为“btn-search”的节点
print('通过class属性值“btn-search”定位节点:')
print(browser.find_element_by_class_name('btn-search'))
#输出使用XPath定位的id属性值为“q”的节点
print('通过XPath定位id属性值为“q”的节点:')
print(browser.find_element_by_xpath('//input[@id="q"]'))
#输出使用CSS选择器定位的class属性值为“btn-search”的节点
print('通过CSS选择器定位class属性值为“btn-search”的节点:')
print(browser.find_element_by_css_selector('.btn-search'))
#定位class属性值为“btn-search”的节点,并赋值给element
element = browser.find_element_by_class_name('btn-search')
#输出element的type属性值
print('class属性值为“btn-search”节点的type属性值:', element.get_attribute("type"))
#输出element的文本
print('class属性值为“btn-search”节点的文本:', element.text)
#输出element的节点名
print('class属性值为“btn-search”节点的节点名:', element.tag_name)
#输出element的id
print('class属性值为“btn-search”节点的id:', element.id)
