day2Selenium

css(层叠样式表\样式表)是用来设计标签的样式和布局
 1.css代码写在哪儿
   内联样式表:写在标签的style属性中
   内部样式表:写在style标签中
 2.css代码怎么写
   选择器{
	   css属性1=值1;
	   css属性2=值2;
   }

	<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
        <style type="text/css"
			/*css语法的代码
			p{
				fron-size: 20px;
			}
			#d1{
				
			}
			</style>
	</head>
	<body>
        <!-- p标签 -->
        <p><style="color: #FF0000;">
        </style>段文字</p>
        <p>2段文字</p>
        
        <!-- span标签 -->
    <span>span文字1</span>
    <span>span文字2</span>
    
    <!-- div标签(主要用来对标签进行分组)-->
    <div id="">
        <p>我是p标签</p>
        <span>我是span</span>
    </div>
    
    <!-- 图片标签 -->
    <img src="./img/jd_logo.ico" title="京东">
    <img src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3087306304,1351303500&fm=26&gp=0.jpg" title="佐罗">
    
    <!-- 超链接 -->
    <a href="https://www.baidu.com">百度</a>
    <a href="https://www.taobao.com">
        <img src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2832399839,3195821267&fm=26&gp=0.jpg" >
        <br>
        <span>路飞</span>
    </a>
    
    <!-- 输入框 -->
    <input type="text" name="" id="" value="张三" placeholder="请输入账号"/>
    <input type="password" name="" id="" value="" placeholder="请输入密码"/>
    <input type="button" name="" id="" value="确定" />
    
    <input type="checkbox" name="" id="" value="" />
    
    <!-- 按钮 -->
    <button type="button">取消</button>
    
	</body>
</html>
3.css选择器(重点)
    1)元素选择器  -  直接将标签名作为选择器,选中所有指定名的标签
       p  -  选中所有的p标签
    2)id选择器   -     在id属性值前加#作为一个选择器,选中id属性值是指定值的标签
       #d1  -  选中id属性的值是d1的标签
	3) class选择器   -   在class属性前加.作为一个选择器,选中class属性值是指定值的所有标签
   .c1 - 选中class属性的值是c1的所有标签
   
	4)群组选择器:选择器1,选择器2,选择器3,..
   		p,a  - 选中所有的p标签和a标签
  		p,#d1  -  选中所有的p标签和所有id是d1的标签
	5)后代选择器: 选择器1 选择器2 选择器3 ..
   		p a - 选择是p标签后代的a标签
	6) 子代选择器: 选择器1>选择器2>选择器3 ..
   		p>a - 选择是p标签子代的a标签
   		div>p>a  

01 selenium基本使用

from selenium.webdriver import Chrome
from selenium.webdriver.common.keys import Keys
import time

# 1. 创建浏览器对象(谷歌)
wb = Chrome()
# 2. 打开指定网页
wb.get('https://www.51job.com/')
# 3.获取当前浏览器中显示的页面的网页源代码
# print(wb.page_source)

# 4.获取网页中的标签,并且操作标签
# 根据选择器找到对应的标签: 浏览器对象.find_element_by_css_selector(css选择器)
search_input = wb.find_element_by_css_selector('#kwdselectid')

# 向输入框中输入内容: 输入框标签.send_keys(内容)
search_input.send_keys('数据分析')
search_input.send_keys(Keys.ENTER)

next_btn = wb.find_element_by_css_selector('.next')
# 点击标签:标签.click()
next_btn.click()

time.sleep(5)
wb.close()

02selenium添加基本设置

from selenium.webdriver import Chrome
from selenium.webdriver import ChromeOptions
import time

# 1. 创建设置对象
options = ChromeOptions()
# 取消自动化测试环境提示
options.add_experimental_option('excludeSwitches', ['enable-automation'])
# 取消图片的加载
options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2})

# 2.创建浏览器对象
wb = Chrome(options=options)
wb.get('https://www.51job.com')

time.sleep(10)
wb.close()

03淘宝设置cookie

from selenium.webdriver import Chrome
from selenium.webdriver import ChromeOptions
from selenium.webdriver.common.keys import Keys
import time


def get_cookies(url, file_name):
    """
    通过selenium获取指定网站的cookie,并将获取到的cookie保存到指定文件中
    :param url: 指定网站的网址
    :param file_name: 保存cookie的文件
    :return: None
    """
    wb = Chrome()
    wb.get(url)

    # 给手动登录的时间
    time.sleep(60)
    cookies = wb.get_cookies()
    print(type(cookies), cookies)
    with open(file_name, 'w') as f:
        f.write(str(cookies))


def open_taobao():
    # 1. 创建设置对象
    options = ChromeOptions()
    # 取消自动化测试环境提示
    options.add_experimental_option('excludeSwitches', ['enable-automation'])
    # 取消图片的加载
    options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2})

    # 2.创建浏览器对象
    wb = Chrome(options=options)
    wb.get('https://www.taobao.com')

    # 添加cookie
    with open('cookies/taobao.txt') as f:
        cookies = eval(f.read())
    for x in cookies:
        wb.add_cookie(x)
    time.sleep(1)
    wb.get('https://www.taobao.com')

    search_input = wb.find_element_by_css_selector('#q')
    search_input.send_keys('橙子')
    search_input.send_keys(Keys.ENTER)

    print(wb.page_source)
    time.sleep(10)


def open_weibo():
    wb = Chrome()
    wb.get('https://weibo.com')
    with open('cookies/weibo.txt') as f:
        cookies = eval(f.read())
    for x in cookies:
        wb.add_cookie(x)

    time.sleep(1)
    wb.get('https://weibo.com')

    time.sleep(10)


# open_taobao()
open_weibo()

# get_cookies('https://weibo.com', 'cookies/weibo.txt')

04 京东滚动

from selenium.webdriver import Chrome
from selenium.webdriver import ChromeOptions
from selenium.webdriver.common.keys import Keys
import time

options = ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2})

wb = Chrome(options=options)
wb.get('https://www.jd.com')
search_input = wb.find_element_by_css_selector('#key')
search_input.send_keys('海贼王')
search_input.send_keys(Keys.ENTER)
time.sleep(2)
# 滚动
wb.execute_script('window.scrollTo(0, document.body.scrollHeight - 600)')
# wb.execute_script('alert("To Bottom")')
print(wb.page_source)
next_btn = wb.find_element_by_css_selector('.pn-next')
print('===================================================')
print(next_btn)
# next_btn.click()


time.sleep(10)
wb.close()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值