zoukankan      html  css  js  c++  java
  • python常见问题集锦

    WebDriverWait


    等待界面触发条件后执行下一步:

    参考:https://www.cnblogs.com/yuuwee/p/6635652.html

    注意内部条件的括号必须是双层,如:((By.ID,'kw'))

    WebDriverWait(driver,10).until(EC.title_is(u"百度一下,你就知道"))
    '''判断title,返回布尔值'''
    
    WebDriverWait(driver,10).until(EC.title_contains(u"百度一下"))
    '''判断title,返回布尔值'''
    
    WebDriverWait(driver,10).until(EC.presence_of_element_located((By.ID,'kw')))
    '''判断某个元素是否被加到了dom树里,并不代表该元素一定可见,如果定位到就返回WebElement'''
    
    WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.ID,'su')))
    '''判断某个元素是否被添加到了dom里并且可见,可见代表元素可显示且宽和高都大于0'''
    
    WebDriverWait(driver,10).until(EC.visibility_of(driver.find_element(by=By.ID,value='kw')))
    '''判断元素是否可见,如果可见就返回这个元素'''

    send_keys失效


     在爬虫过程中,对input赋值时,send_keys偶发失效的问题,需要先clear后send_keys

     driver.find_element_by_id("searchKeyWord").clear()
     driver.find_element_by_id("searchKeyWord").send_keys("123")

    python中出现引用报错


    一般使用import:

    import traceback

    引用包内的类 from 包 import 类:

    from PIL import Image

    多级目录引用:

    在每个目录下建 __init__.py 文件,内容为空即可。如下目录:

    A文件夹--------B文件夹------a.py

          |-------------C文件夹------b.py

          |-------------c.py

          |-------------d.py

    a.py引用b.py:
    import sys
    sys.path.append("..")
    import C.b
    
    a.py引用c.py:
    import sys
    sys.path.append("..")
    import c
    
    c.py引用a.py:
    from B import a
    
    c.py引用d.py:
    import d #直接引用
    from . import d     #.表示当前目录
    

    python模块调用提示文件不存在


    参考:https://blog.csdn.net/cxx654/article/details/79371565

    方法一:

    需要使用 os.path.dirname(__file__)解决:

    import os
    print("当前路径 -> %s" %os.getcwd())
    current_path = os.path.dirname(__file__)
    def read_file() :
        with open(current_path + "/user_info.txt" , encoding = 'utf-8') as f_obj :
            content = f_obj.readline()
            print("文件内容 -> %s" %content) 

    方法二:

    有时候方法一也不能起到效果,比如当用C#调用python写的exe时就会失效。这就需要用到:

    os.path.dirname(sys.argv[0])

    具体使用方法和方法一相同,可以获取到当前文件的绝对路径。

  • 相关阅读:
    HTML 文本格式化实例
    HTML 文本格式化实例--预格式文本+“计算机输出”标签
    HTML 文本格式化实例--文本格式化
    如何用通俗易懂的语言解释脚本(script)是什么?
    1. HTML 基础标签
    java 和 python的一些对比
    XML fragments parsed from previous mappers does not contain value for com.miniprogram.meirong.comment.dao.CommentMapper.Base_Column_List
    The request was rejected because the URL was not normalized.
    fastjson的简单使用
    微信小程序的分页
  • 原文地址:https://www.cnblogs.com/JHelius/p/14318885.html
Copyright © 2011-2022 走看看