zoukankan      html  css  js  c++  java
  • selenium自动登录52h5并签到(遍历有些问题,待改)

    自动登录、遍历主页链接

    # coding: utf-8
    from selenium import webdriver
    from time import sleep
    
    class A(object):
        def open(self):
            self.get("http://www.52h5.com/member.php?mod=logging&action=login")
    #        print(self.page_source)
            sleep(2)
    
    
        def denglu(self):
            print("正在输入用户名密码")
            browser.find_element_by_name("username").clear()
            browser.find_element_by_name("username").send_keys('niaba')
            browser.find_element_by_name("password").clear()
            browser.find_element_by_name("password").send_keys('jxxjxx')
            browser.find_element_by_name("loginsubmit").click()
            sleep(2)
            print("登录成功")
            print("进入52h5源码论坛")
    
    
        def lianjie(self):
            length = len(browser.find_elements_by_tag_name("a"))
            print(length)
            for i in range(0, length):
                self.get("http://www.52h5.com/forum.php")
                links = browser.find_elements_by_tag_name("a")
                link = links[i]
                if not ("_blank" in link.get_attribute("target") or "baidu" in link.get_attribute(
                        "href") or "logging" in link.get_attribute("href") or "google" in link.get_attribute("href")):
                    print(i)
                    print(link.get_attribute('href'))
                    link.click()
                    sleep(3)
    
    browser = webdriver.Chrome()
    
    a = A
    print("正在打开浏览器")
    a.open(browser)
    try:
        a.denglu(browser)
    except:
        print("已登录")
    
    a.lianjie(browser)
    
    
    #for link in browser.find_elements_by_xpath("//*[@href]"):
    #    print(link.get_attribute('href'))

    自动签到(读取excel表格)

    # coding: utf-8
    from selenium import webdriver
    from time import sleep
    import xlrd
    
    data = xlrd.open_workbook("pass.xlsx")
    sh1 = data.sheet_by_name("sh1")
    name = sh1.cell(1, 0).value
    print("用户名:" + name)
    password = sh1.cell(2, 0).value
    print("密码:" + password)
    
    class A(object):
        def open(self):
            self.get("http://www.52h5.com/member.php?mod=logging&action=login")
            print("进入52h5源码论坛")
    #        print(self.page_source)
            sleep(2)
    
        def denglu(self):
            print("正在输入用户名密码")
            browser.find_element_by_name("username").clear()
            browser.find_element_by_name("username").send_keys(name)
            browser.find_element_by_name("password").clear()
            browser.find_element_by_name("password").send_keys(password)
            browser.find_element_by_name("loginsubmit").click()
            sleep(2)
            print("登录成功")
    
        def qiandao(self):
            browser.find_element_by_id("mn_N462e").click()
            print("进入签到界面")
            sleep(2)
            browser.find_element_by_id("yl").click()
            browser.find_element_by_class_name("btn").click()
            print("签到成功")
    
    
    browser = webdriver.Chrome()
    
    a = A
    print("正在打开浏览器")
    a.open(browser)
    
    try:
        a.denglu(browser)
    except:
        print("已登录")
    
    try:
        a.qiandao(browser)
    except:
        print("今天已经签到过")
    
    
    # browser = webdriver.Firefox()
    # b = A
    # b.open(browser)
    # b.denglu(browser)
  • 相关阅读:
    Codeforces Round #603 (Div. 2) E. Editor(线段树)
    Codeforces Round #603 (Div. 2) D. Secret Passwords(并查集)
    Java的DAO设计模式
    js实现本地时间同步
    循环播放
    正则表达式(2)
    正则表达式(1)
    第十八个知识点:画一个描述ECB,CBC,CTR模式的操作
    第十七个知识点:描述和比较DES和AES的轮结构
    第四十一个知识点 所有的侧信道分析都是能量分析吗
  • 原文地址:https://www.cnblogs.com/p36606jp/p/15113582.html
Copyright © 2011-2022 走看看