g1oodboy
g1oodboy
采纳率87.5%
2017-07-25 08:49 阅读 4.0k

list object has no attribute location python

我刚使用python写程序,然后总是报错list object has no attribute location,为什么?我应该怎么处理呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

5条回答 默认 最新

  • 已采纳
    zdl14591423 充满鲜花的世界 2017-07-26 06:17

    good=wzj.find_elements_by_class_name('gt_cut_fullbg_slice') # 这里返回的应该是一个列表,你可以插入print(type(good))看一下、
    tem=good.location
    一个list对象,怎么会有location方法?

    点赞 评论 复制链接分享
  • pkuout pkuout 2017-07-25 09:43

    能帖一下报错的行的代码吗

    点赞 评论 复制链接分享
  • huaerxiela6 huaerxiela6 2017-07-25 11:13

    错误提示说了,你的列表有属性问题

    点赞 评论 复制链接分享
  • g1oodboy g1oodboy 2017-07-26 05:49

    这是代码,谢谢大神了。
    import colorsys
    import urllib,os,uuid,re,time
    from PIL import Image
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium import webdriver
    from StringIO import StringIO
    import colorsys
    import urllib,os,uuid,re,time
    from PIL import Image
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium import webdriver
    from StringIO import StringIO

    wzj = webdriver.Firefox()#打开火狐浏览器
    wzj.get('http://bj.gsxt.gov.cn/sydq/loginSydqAction!sydq.dhtml')
    file=open('C:/Users/admin/Desktop/实验001.txt','r+')

    def inputbyid(): #001_3
    #输入查询关键词
    #:text: Unicode, 要输入的文本
    #:element_id: 输入框网页元素id
    #keyword_qycx
    text=u"百度"
    element_id="keyword_qycx"
    input_el =wzj.find_element_by_id(element_id)
    input_el.clear()
    input_el.send_keys(text)
    time.sleep(3.5)

    def clickbyid(): #001_4
    #点击查询按钮
    #:element_id: 查询按钮网页元素id
    #popup-submit
    element_id01="popup-submit"
    wzj.find_element_by_id(element_id01).click()
    time.sleep(3.5)

    def openBrowser():#001_2
    good=wzj.find_elements_by_class_name('gt_cut_fullbg_slice')
    tem=good.location
    tems=str(tem)
    file.write(tems)
    file.close()

    inputbyid()
    clickbyid()
    openBrowser()

    点赞 评论 复制链接分享
  • g1oodboy g1oodboy 2017-07-26 06:31

    def crop_captcha_image(self, element_id="gt_box"):
    """截取验证码图片
    :element_id: 验证码图片网页元素id
    :returns: StringIO, 图片内容
    """
    captcha_el = self.driver.find_element_by_class_name(element_id)
    location = captcha_el.location
    size = captcha_el.size
    left = int(location['x'])
    top = int(location['y'])
    left = 1010
    top = 535
    # right = left + int(size['width'])
    # bottom = top + int(size['height'])
    right = left + 523
    bottom = top + 235
    print(left, top, right, bottom)
    screenshot = self.driver.get_screenshot_as_png()#screenshot意思截取图片
    screenshot = Image.open(StringIO.StringIO(screenshot))
    captcha = screenshot.crop((left, top, right, bottom))
    captcha.save("%s.png" % uuid.uuid4().get_hex())
    return captcha

        这是我在网上找到的源码,然后上面就是这么写的,我应该怎么办?
    
    点赞 评论 复制链接分享

相关推荐