• day05 Python


    selenium 基本使用:
    from
    selenium import webdriver # 导入键盘Keys from selenium.webdriver.common.keys import Keys import time driver = webdriver.Chrome() # 检测代码块 try: # 隐式等待,等待标签加载 driver.implicitly_wait(10) # 往京东主页发送请求 driver.get('https://www.jd.com/') # 通过id查找input输入框 input_tag = driver.find_element_by_id('key') # send_keys为当前标签传值 input_tag.send_keys('中华字典') # 按键盘的回车键 input_tag.send_keys(Keys.ENTER) time.sleep(3) ''' 爬取京东商品信息: 公仔 名称 url 价格 评价 ''' # element 找一个 # elements 找多个 # 查找所有的商品列表 good_list = driver.find_elements_by_class_name('gl-item') # print(good_list) # 循环遍历每一个商品 for good in good_list: # 通过属性选择器查找商品详情页url # url good_url = good.find_element_by_css_selector('.p-img a').get_attribute('href') print(good_url) # 名称 good_name = good.find_element_by_css_selector('.p-name em').text print(good_name) # 价格 good_price = good.find_element_by_class_name('p-price').text print(good_price) # 评价数 good_commit = good.find_element_by_class_name('p-commit').text print(good_commit) str1 = f''' url: {good_url} 名称: {good_name} 价格: {good_price} 评价: {good_commit} ''' # 把商品信息写入文本中 with open('jd.txt', 'a', encoding='utf-8') as f: f.write(str1) time.sleep(10) # 捕获异常 except Exception as e: print(e) # 最后都会把驱动浏览器关闭掉 finally: driver.close()
    数据类型的使用:
    int、float、str、bool、list、dict、complex、tuple、set
    重点:*****
    数据类型的重点方法!
    可变不可变类型!
    数据类型的相互转换!
    非重点:
    数据类型不常用方法
    isinstance(obj,类型):可以判断,True/False 本质上作为1/0存储的。
    字符串常规操作:******
    1、字符串的索引取值:能索引取值的多个值都是有序。例:str="123abc"
    使用:字符串名+[索引值] 
    2、字符串拼接:用"+"号或用占位符"%s"。
    3、字符串长度:len(字符串)
    4、字符串切片:取子字符串。变量名=字符串[开始:结束:步长] 
                s=str[0:3:1]  s=str[-1:-3:-1]
    5、字符串循环(遍历):for  i  in  字符串 :
    6、c成员运算:判断某字符串是否在该字符串中:
                某字符串 in 该字符串  结果为bool值
    字符串重要方法:*****
    1、索引:目标字符串的索引位置:
            位置=字符串.index("目标字符串")
    2、去字符串两边空格:strip
            字符串.strip()
    3、计算目标字符串出现次数:count
    
    4、判断字符串是否是数字:isdigit()
             字符串.isdigit():结果为bool值,只能判断正整数。
    5、大小写转换:upper/lower  字符串.upper/lower
      首字母大写:capitalize()
       每个单词首字母大写:title()
    6、判断是否以某某开头或结尾:startwith()/endwith(),结果为    bool值
    7、替换:replace(old,new,count)
    
    8、格式化:format
    
    列表类型:列表内部可以存放多个值,可以是任何类型
        列表可以嵌套
    列表的常用操作:
        1、索引取值:
         2、列表运算:+、*。得到的是新列表。
         3、列表长度:len(列表)
         4、列表切片:[: :]
         5、成员运算: 目标成员  in 目标列表
         6、循环:for i  in  目标列表 :
    列表常用方法:
        1、列表的增删改查:
            增:列表.append(): 末尾增
                列表.insert(index,值):任意位置的index之前的增
            改:列表[index]=目标改的值
            删:列表.remove(目标值)
                列表.pop():默认从末尾删,并返还值。可以(index)            指定位置删除
                del 列表[index]
                列表.clear():清空列表
            
         2、其他方法:
            排序:按照目标规则进行排序:列表.sort():默认正向排序
                针对于同类型!
                反转排序:列表.sort(reverse=True)
                        列表.reverse():叫反转不叫排序
           计算值的个数:列表.count():列表中可以存放重复数据
                        用来计算目标值的存放次数。
           整体增加,添加到末尾:列表.extend("可迭代对象")
           目标的索引位置,可以规定区间:
              列表.index(目标对象,[开始位置,[结束位置]])
           
        ***可变与不可变类型***: 
        可变类型:值改变,地址不变。
        不可变类型:值改变,地址也改变。
    
    了解内容:
    1. find | rfind:查找子字符串索引,无结果返回-1
    2. lstrip:去左留白
    3. rstrip:去右留白
    4. center | ljust | rjust | zfill:按位填充
    语法:center(所占位数, '填充符号')
    5. expandtabs:规定	所占空格数
    6. captialize | title | swapcase:首字母大写 | 单词首字母大写 | 大小写反转
    7. isdigit | isdecimal | isnumeric:数字判断
    8. isalnum | isalpha:是否由字母数字组成 | 由字母组成
    9. isidentifier:是否是合法标识符
    10. islower | isupper:是否全小 | 大写
    11. isspace:是否是空白字符
    12. istitle:是否为单词首字母大写格式
  • 相关阅读:
    KCF目标跟踪方法分析与总结
    C# 事件
    委托学习(3)
    委托学习(2)
    委托学习(1)
    本地无sqlserver服务下操作数据库 之GSQL
    unity Android 打包后读取 xml 文件
    Unity 3D 调用摄像头捕获照片 录像
    Unity 进度条3D制作(3D版)
    Unity 3D 进度条制作
  • 原文地址:https://www.cnblogs.com/zwsmile/p/11105763.html
Copyright © 2020-2023  润新知