栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python自动批量上传多张图片到OS(二)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python自动批量上传多张图片到OS(二)

首先还是要先完成上篇文章的前置内容
具体可以参考上一篇

  STEP.1 导出 Metamask  

  STEP.2 连接 Metamask  

  STEP.3 OPENSEA端部署 


接着我們会沿用connector去扩充

文章里的编码可能会有换行导致运行失败

扩充之后目录会多出
opensea_bridge_metamask.py
opensea_list_helper.py
两个文件

 
其中几处 collection/sunset-cloudss是我的collection名称,需要换成自己的

opensea__list_helper.py :

import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import metamask_connector
import opensea_bridge_metamask

metamask_connector.meta_mask_navigate()

opensea_bridge_metamask.connect()

time.sleep(5)
driver = metamask_connector.get_driver()

time.sleep(10)
print(driver.window_handles)
driver.switch_to.window(driver.window_handles[2])

time.sleep(1)
driver.execute_script('window.open("https://opensea.io/collection/sunset-cloudss","_self")')
print(driver.title)

for count in range(1, 41):
    print('=======================')
    print(str(count).zfill(2))
    target_id = str(count).zfill(2)

    target_script = 'window.open("https://opensea.io/collection/sunset-cloudss?search[query]=' + 
        target_id + '"' + ',"_self")'
    driver.execute_script(target_script)
    time.sleep(3)

    driver.find_elements(By.XPATH, "//article/a[contains(@href, 'assets/')]")[0].click()

    time.sleep(3)
    print(driver.current_url)

    target_script = 'window.open("' + 
        driver.current_url + '/sell"' + ',"_self")'
    print(target_script)
    driver.execute_script(target_script)

    driver.find_element(By.XPATH, "//input[@name='price']").send_keys(0.01)


    time.sleep(3.3)
    driver.find_element(
        By.XPATH, "//button[text()='Complete listing']").click()

    # 页面上的 ”签名“
    time.sleep(10)
    driver.find_element(By.XPATH, "//button[text()='Sign']").click()

    '''
    # Unlock
    time.sleep(3)
    driver.find_element(By.XPATH, "//button[text()='Unlock']").click()
    #driver.find_element(By.XPATH, "//*[@id='Body react-aria-8']/div/div/button").click()
    '''

    time.sleep(10)
    driver.switch_to.window(driver.window_handles[3])
    print(driver.title)


    # 点击钱包里的向下滑动箭头
    jiantou = WebDriverWait(driver, 15).until(
        EC.visibility_of_element_located((By.XPATH, '/html/body/div[1]/div/div[2]/div/div[3]/div[1]'))
    )
    driver.execute_script("arguments[0].click();", jiantou)

    # 钱包里的”签名“
    time.sleep(5)
    # //*[@app-content"]/div/div[2]/div/div[4]/button[2]
    # /html/body/div[1]/div/div[2]/div/div[4]/button[2]
    # driver.find_element(By.XPATH, "//button[text()='签名']").click()
    # 解决: Element is not clickable at point,Other element would receive the click
    # 用执行js的方式来提交,果然可以避免这个问题
    button = WebDriverWait(driver, 15).until(
        EC.visibility_of_element_located((By.XPATH, '/html/body/div[1]/div/div[2]/div/div[4]/button[2]'))
    )
    driver.execute_script("arguments[0].click();", button)

    time.sleep(5)
    driver.switch_to.window(driver.window_handles[2])
    print(driver.title)

    print('=======================')

opensea_bridge_metamask.py :

import time
from selenium.webdriver.common.by import By
import metamask_connector

def connect() :
    driver = metamask_connector.get_driver()

    driver.execute_script('window.open("https://opensea.io/login","_blank")')

    time.sleep(10)
    print(driver.window_handles)
    driver.switch_to.window(driver.window_handles[2])
    print(driver.title)

    time.sleep(10)
    driver.find_element(By.CLASS_NAME, "Navbar--brand").click()

    time.sleep(1)
    driver.back()

    time.sleep(1)
    driver.find_element(By.XPATH, "//span [text()='MetaMask']").click()

    time.sleep(1)
    print(driver.window_handles)

    driver.switch_to.window(driver.window_handles[3])

    time.sleep(3)
    driver.find_element(By.CLASS_NAME, "btn-primary").click()

    time.sleep(3)
    driver.find_element(By.CLASS_NAME, "btn-primary").click()


运行opensea__list_helper.py后就开始自动上架了!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1001949.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号