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

做网站编程要学什么指数基金定投怎么买

做网站编程要学什么,指数基金定投怎么买,建筑方案设计怎么写,网站大数据怎么做1 selenium概述 1.什么是selenium? (1)Selenium是一个用于Web应用程序测试的工具。 (2)Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。 (3)支持通过各种driver&#…

1 selenium概述

1.什么是selenium?
(1)Selenium是一个用于Web应用程序测试的工具。
(2)Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。
(3)支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真实浏览器完成测试。
(4)selenium也是支持无界面浏览器操作的。
2.为什么使用selenium?
模拟浏览器功能,自动执行网页中的js代码,实现动态加载
3.如何安装selenium?
(1)操作谷歌浏览器驱动下载地址http://chromedriver.storage.googleapis.com/index.html
(2)谷歌驱动和谷歌浏览器版本之间的映射表http://blog.csdn.net/huilan_same/article/details/51896672
(3)查看谷歌浏览器版本谷歌浏览器右上角‐‐>帮助‐‐>关于
(4)安装selenium4.1.1版本pip install selenium==4.1.0
4.selenium的使用步骤?
(1)导入:from selenium import webdriver
(2)创建谷歌浏览器操作对象:a、如果驱动路径和采集数据的py文件在同一个目录时,创建对象如下:browser = webdriver.Chrome()b、如果驱动路径和采集数据的py文件不在同一个目录时,创建对象如下:path = 谷歌浏览器驱动文件路径browser = webdriver.Chrome(path)
(3)访问网址
url = 要访问的网址
browser.get(url)
5、selenium的元素定位?
元素定位:自动化要做的就是模拟鼠标和键盘来操作来操作这些元素,点击、输入等等。操作这些元素前首先要找到它们,WebDriver提供很多定位元素的方法方法,现以百度网页为例
# 通过 id 定位
driver.find_element_by_id("kw")# 通过name定位:
driver.find_element_by_name("wd")# 通过class name定位:
driver.find_element_by_class_name("s_ipt")# 通过tag name定位:
driver.find_element_by_tag_name("input")# 通过 xpath 定位的几种写法
driver.find_element_by_xpath("//*[@id='kw']")
driver.find_element_by_xpath("//*[@name='wd']")
driver.find_element_by_xpath("//input[@class='s_ipt']")
driver.find_element_by_xpath("/html/body/form/span/input")
driver.find_element_by_xpath("//span[@class='soutu-btn']/input")
driver.find_element_by_xpath("//form[@id='form']/span/input")
driver.find_element_by_xpath("//input[@id='kw' and @name='wd']")# 通过 css 定位的几种写法
driver.find_element_by_css_selector("#kw")# 根据选择器进行定位输入框的id属性,id用#,其中#kw表示的是id选择器名称是kw的
driver.find_element_by_css_selector("[name=wd]")
driverr.find_element_by_css_selector(".s_ipt")
driver.find_element_by_css_selector("html > body > form > span > input")
driver.find_element_by_css_selector("span.soutu-btn> input#kw")
driver.find_element_by_css_selector("form#form > span > input")# 通过 link_text 定位
driver.find_element_by_link_text("新闻")
driver.find_element_by_link_text("hao123")
driver.find_element_by_partial_link_text("新")
driver.find_element_by_partial_link_text("hao")
driver.find_element_by_partial_link_text("123")# 如果是定位一组元素,用下面
find_elements_by_id()
find_elements_by_name()
find_elements_by_class_name()
find_elements_by_tag_name()
find_elements_by_link_text()
find_elements_by_partial_link_text()
find_elements_by_xpath()
find_elements_by_css_selector()

2 selenium访问百度网页输入"python"

from selenium import webdriver
import time
url='https://www.baidu.com/'
brower=webdriver.Chrome()
brower.get(url)
#解决闪退方式:time.sleep(20)
time.sleep(10)
brower.find_element_by_id("kw").send_keys('python')
time.sleep(10)
brower.find_element_by_id("su").click()
time.sleep(20)selenium常用配置,模拟用户操作百度网页,将以上代码改为:from selenium import webdriver
import time
#配置
options=webdriver.ChromeOptions()
options.add_experimental_option('detach',True)
#禁止浏览器扩展
options.add_argument('--disable-extensions')#禁止浏览器弹窗
options.add_argument('--disable-popup-blocking')
#创建浏览器对象
diver=webdriver.Chrome(options=options)diver.get('https://www.baidu.com/')
diver.maximize_window()diver.find_element_by_id("kw").send_keys('python')
time.sleep(3)
diver.find_element_by_id("su").click()
time.sleep(5)

3、selenium采集BOSS直聘数据

from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
import time
#BOSS直聘
#谷歌内核
def spider(url):driver.get(url)sleep(3)search = driver.find_element(By.XPATH, '//*[@id="wrap"]/div[3]/div/div[1]/div[1]/form/div[2]/p/input')search.send_keys("数据分析师")sleep(2)submit = driver.find_element(By.XPATH, '//*[@id="wrap"]/div[3]/div/div[1]/div[1]/form/button')submit.click()print('搜索结束,开始寻找信息')driver.implicitly_wait(5)sleep(3)parser(driver)ye = 2while (ye < 5):print("正在爬去第{}页".format(ye))next_page = driver.find_element_by_class_name("ui-icon-arrow-right")next_page.click()sleep(5)parser(driver)ye = ye + 1def parser(driver):# #lis = driver.find_elements(By.CSS_SELECTOR, '.job-card-wrapper')print('定位完成')for li in lis:jobname = li.find_element(By.CSS_SELECTOR, '.job-name').textinfo_data = li.find_element(By.CSS_SELECTOR, '.job-card-left').get_attribute('href')jobarea = li.find_element(By.CSS_SELECTOR, '.job-area').textslary = li.find_element(By.CSS_SELECTOR, '.salary').textprint('工作名字:' + jobname + ' 工作场所:', jobarea + ' 工资:' + slary + ' 详细链接:' + info_data)print('\n')if __name__ == '__main__':driver=webdriver.Chrome()#调窗口至全屏大小driver.maximize_window()url='https://www.zhipin.com/zhengzhou/?sid=sem_pz_360pc_title'spider(url)

4、selenium采集中国大学MOOC课程信息

4.1单页采集mooc课程评论数据

import requestsurl='https://www.icourse163.org/course/ZJU-200001'
headers={"user-agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4214.3 Safari/537.36"}re=requests.get(url,headers=headers)
re.encoding="utf-8"
response=re.text
print(response)#为了解决以上没有得到源码的问题,使用selenium采集from selenium import webdriver
import timedef spider(url):driver.get(url)driver.implicitly_wait(3)button=driver.find_element_by_id("review-tag-button")button.click()time.sleep(5)paser(driver)def paser(driver):info=driver.find_elements_by_class_name("ux-mooc-comment-course-comment_comment-list_item_body")all=[]name=[]content=[]time_f=[]course_count=[]like_count=[]for i in info:all.append(i.text.split("\n"))for a in all:name.append(a[0])content.append(a[1])time_f.append(a[2])course_count.append(a[3])like_count.append(a[4])all_info=list(zip(name,content,time_f,course_count,like_count))print(all_info)if __name__ == '__main__':driver=webdriver.Chrome()url='https://www.icourse163.org/course/ZJU-200001?from=searchPage&outVendor=zw_mooc_pcssjg_'spider(url)

2、分页采集mooc课程评论数据并保存到csv中

from selenium import webdriver
import time
import csvdef spider(url):driver.get(url)driver.implicitly_wait(3)button=driver.find_element_by_id("review-tag-button")button.click()time.sleep(5)paser(driver)ye=2while(ye<5):print("正在爬去第{}页".format(ye))next_page=driver.find_element_by_class_name("ux-pager_btn__next")next_page.click()time.sleep(5)paser(driver)ye=ye+1def paser(driver):info=driver.find_elements_by_class_name("ux-mooc-comment-course-comment_comment-list_item_body")all=[]name=[]content=[]time_f=[]course_count=[]like_count=[]for i in info:all.append(i.text.split("\n"))for a in all:name.append(a[0])content.append(a[1])time_f.append(a[2])course_count.append(a[3])like_count.append(a[4])all_info=list(zip(name,content,time_f,course_count,like_count))save(all_info)def save(all_info):with open("mooc.csv","a+",newline="",encoding="utf-8") as f:w=csv.writer(f)for row in all_info:w.writerow(row)#分页采集保存到csv中if __name__ == '__main__':with open("mooc.csv","a+",newline="",encoding="utf-8") as f:w=csv.writer(f)w.writerow(["评论者","评论内容","发表时间","开课次数","点赞数"])driver=webdriver.Chrome()url='https://www.icourse163.org/course/ZJU-200001?from=searchPage&outVendor=zw_mooc_pcssjg_'spider(url)
http://www.shuangfujiaoyu.com/news/53576.html

相关文章:

  • 自己做b2b平台网站建设seo引擎搜索
  • 网站开发 保修期百度官方入口
  • 设计方案审查意见班级优化大师网页版登录
  • 免费h5源码资源源码站热点时事新闻
  • 泉州科技云网站建设爱站网长尾关键词挖掘工具电脑版
  • 做网站ps文字有锯齿seo百度排名优化
  • 做网站做的好的公司有哪些怎么在百度推广
  • 百度智能小程序怎么优化排名南宁网站优化
  • 吕梁网站建设优化合作平台
  • 北京企业网站开发多少钱厦门零基础学seo
  • 开发网站开发工程师互联网电商平台有哪些
  • html自我介绍网页模板代码深圳推广优化公司
  • 深圳手机集团网站建设东莞seo网络营销
  • 高端网站设计电话搜索引擎优化seo公司
  • 企业免费网站优化方案网络营销战略有什么用
  • 在网站文章锚文本怎么做网络销售怎么找客源
  • 在国外做网站卖国内的东西长安seo排名优化培训
  • 网站建设推广岗位青岛谷歌推广
  • 公司想建一个网站找谁做搜索引擎优化 简历
  • 网站制作系统域名访问网站入口
  • 哈尔滨网站建设索q.479185700seo优化服务
  • 芜湖网站建设电话微信营销工具
  • 免费网站收录入口网站如何提升seo排名
  • jimdo做的网站长沙网站推广seo
  • 如何建立本站站点seoul是什么意思
  • 建设留学网站怎么推广自己的网站
  • 国外最新创意产品网站有哪些方面网络营销的方式有哪些
  • 佛山cms模板建站seo的五个步骤
  • 上海的广告公司网站建设营销网站建设规划
  • 对网页美工的认识网站优化排名易下拉霸屏