Sunday, December 31, 2023

优厚搅拌,如果豆业页面视频没有播放,就自动播放

 // ==UserScript==

// @name         自动播放抖音首页视频

// @namespace    http://tampermonkey.net/

// @version      2023-12-20

// @description  在抖音首页,如果视频没有播放,则自动开始播放视频

// @author       You

// @match        https://www.douyin.com/

// @icon         https://www.douyin.com/favicon.ico

// @grant        none

// @license      MIT

// ==/UserScript==


(function() {

    const video = document.querySelector('video')

    if (video && video.paused) {

        video.play()

    }

})();

Thursday, December 21, 2023

自己一直没有实现的功能,她们搞定了,但还是不完美

 https://modelscope.cn/studios/DAMOXR/OutfitAnyone/summary

https://huggingface.co/spaces/HumanAIGC/OutfitAnyone

Monday, December 18, 2023

评论狮-超越人力:一款AI应用如何帮助您的业务飞速发展

1. "智能化的营销:如何用AI提升您的销售额"

大家好,我是老陈,一个在程序开发领域摸爬滚打了十几年的老兵。有一次,我去拜访一位我深深敬佩的老朋友,他是一家实体行业的老板,每月的销售额高达上千万,即使在疫情三年的影响下,他的业务也没有受到任何影响。我对他的成功感到惊讶,于是好奇地问他这是怎么做到的?


他神秘地带我走进一间独立的办公室,那里有三位年轻的女孩子,她们都是中文系的学生。她们的工作就是利用抖音为他们的产品做广告。他们的推广方式截然不同,三个女孩分别负责一个公司账号,账号的内容是规范化的公司介绍、产品介绍和老板介绍,重点是老板的介绍。他们每天的工作就是在视频下面给目标客户群发评论,比如说通过关键字搜索到潜在客户群体的视频,如果视频是关于产品的,就聊产品,如果是关于学习的,就聊学习,如果是跑步的就聊跑步。无论视频的内容是什么,就要针对性的写评论,认真的写。客户发了个视频,最希望别人看到这条评论,肯定会点进去看看是谁写的。这时,首页的装修和内容就起到作用了,一看还是大老板写的评论,这下互动就多了。现在,这家公司70%的客户都是通过这种简单的方式获得的。


然而,这种方式也有它的问题。首先,人力成本高昂,每个月需要支付三位员工8000多的工资。其次,人力资源的稳定性不高,员工可能会请假、摸鱼,甚至离职。最后,人的精力是有限的,无法做到24小时不间断的工作。


作为一名资深的程序员,我看到这种情况后,立即想到可以通过人工智能来实现这个过程。我告诉老板,我可以开发一个软件来替代这三个女孩的工作。老板听了很好奇,怀疑机器怎么可能和人的大脑相比,不可能比中文系写得好。


然而,仅仅三天后,我开发出了一个应用,这个应用可以自动理解视频,并根据视频的内容写出相应的评论,还可以自定义评论的态度、语言、风格,甚至插入广告,引导流量。老板看了以后大吃一惊,真的是一个软件完全取代了这三个女孩的工作。


我以为老板会辞退三名员工,或者最多只留下一个,结果这老板,直接开了十几个账号,让这三个姑娘来维护,然后用我的软件,马力全开,当月销售翻了两倍。


目前我已经把这个程序迭代了十几个版本,它不仅可以帮助您提高效率,还可以大幅度增加销售额。我们的产品价格公道,购买方式简单,而且我们有一支专业的客服团队,随时为您解答疑问。如果您对我们的产品感兴趣,欢迎随时联系我们,我们将为您提供更多的信息。


我们的客户来自各行各业,他们中有很多人都是通过使用我们的产品,实现了业务的飞跃式增长。比如,有一位客户,他是一家小型电商的老板,通过使用我们的产品,他的销售额在短短三个月内就翻了三倍。他告诉我们,他非常感谢我们的产品,因为它让他的生意焕发了新生。


我们深知,每一个成功的背后,都离不开我们的产品和我们的服务。因此,我们始终坚持以客户为中心,以提供优质服务为己任。我们相信,只有帮助客户成功,我们才能成功。


在未来,我们将继续优化我们的产品,提供更多的功能,满足更多的需求。我们期待与更多的客户一起,共创美好的未来。


感谢您花时间阅读这篇文章,如果您有任何问题或建议,欢迎随时联系我们。我们期待与您的合作,共同开创新的篇章。现在,就是行动的时候了。请不要犹豫,立即联系我们,让我们的产品帮助您的业务飞速发展吧!


精简版

,我,一程序。有,我访,他使。他

产品广,通过视频评论。然,这方式,效

,我一个,能视频评论,大。老使用我的,销

,这程序版本,它可以,增。我们产品价格,购方式,有服务

我们,他通过使用我们产品,实。我们,提服务

,我们我们产品,满。感文章,如果问题,欢联系我们。现,就,让我们产品


Thursday, December 14, 2023

判断鼠标光标的形状,是小手还是Ibeam,hand,arrow

 from win32con import IDC_APPSTARTING, IDC_ARROW, IDC_CROSS, IDC_HAND, \

IDC_HELP, IDC_IBEAM, IDC_ICON, IDC_NO, IDC_SIZE, IDC_SIZEALL, \
IDC_SIZENESW, IDC_SIZENS, IDC_SIZENWSE, IDC_SIZEWE, IDC_UPARROW, IDC_WAIT

from win32gui import LoadCursor, GetCursorInfo

DEFAULT_CURSORS = {
    LoadCursor(0, IDC_APPSTARTING): 'appStarting',
    LoadCursor(0, IDC_ARROW): 'Arrow', LoadCursor(0, IDC_CROSS): 'Cross',
    LoadCursor(0, IDC_HAND): 'Hand', LoadCursor(0, IDC_HELP): 'Help',
    LoadCursor(0, IDC_IBEAM): 'IBeam', LoadCursor(0, IDC_ICON): 'ICon',
    LoadCursor(0, IDC_NO): 'No', LoadCursor(0, IDC_SIZE): 'Size',
    LoadCursor(0, IDC_SIZEALL): 'sizeAll',
    LoadCursor(0, IDC_SIZENESW): 'sizeNesw',
    LoadCursor(0, IDC_SIZENS): 'sizeNs',
    LoadCursor(0, IDC_SIZENWSE): 'sizeNwse',
    LoadCursor(0, IDC_SIZEWE): 'sizeWe',
    LoadCursor(0, IDC_UPARROW): 'upArrow',
    LoadCursor(0, IDC_WAIT): 'Wait',
}


def get_current_cursor():
    curr_cursor_handle = GetCursorInfo()[1]
    res = DEFAULT_CURSORS.get(curr_cursor_handle, 'None')
    return res

if __name__ == '__main__':
    import time
    while True:
        a = get_current_cursor()
        print (a)
        time.sleep(2)

Wednesday, December 13, 2023

通过 opencv + pyautogui 精准找到目标定位, 以图找图

 


# 导入模块 cv2匹配算法 plt 显示图片
import cv2
from matplotlib import pyplot as plt
import pyautogui
import time

# 读入图片 big1.png是背景大图; small.png是需要寻找的小图(格式.jpg .png都行)
# time.sleep(3)
# pyautogui.screenshot('bg.png')
# img = cv2.imread("bg.png",0) # 0 读入灰度图
# img3 = cv2.imread("bg.png",1) # 1 读入彩色图
# img2 = img.copy()
# template = cv2.imread("entry.png",0)
# w, h = template.shape[::-1]


# 6种算法的列表
methods = ['cv2.TM_CCOEFF', 'cv2.TM_CCOEFF_NORMED', 'cv2.TM_CCORR',
            'cv2.TM_CCORR_NORMED', 'cv2.TM_SQDIFF', 'cv2.TM_SQDIFF_NORMED']

methods = ['cv2.TM_CCOEFF_NORMED']

def find_img(big_path, small_path, method='cv2.TM_CCOEFF_NORMED'):
    # Load images
    small = cv2.imread(small_path, 0)
    big = cv2.imread(big_path, 0)

    # Check if images are loaded
    if small is None:
        raise FileNotFoundError(f"Could not load image at {small_path}")
    if big is None:
        raise FileNotFoundError(f"Could not load image at {big_path}")

    # Get the dimensions of the small image
    w, h = small.shape[::-1]

    # Apply template matching with the given method
    method = eval(method)
    res = cv2.matchTemplate(big, small, method)

    # Find the location with the best match
    min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
    if method in [cv2.TM_SQDIFF, cv2.TM_SQDIFF_NORMED]:
        top_left = min_loc
    else:
        top_left = max_loc
    bottom_right = (top_left[0] + w, top_left[1] + h)
    center = ((top_left[0] + bottom_right[0]) // 2, (top_left[1] + bottom_right[1]) // 2)

    return center
if __name__ == "__main__":
    time.sleep(3)
    pyautogui.screenshot('bg.png')
    small_path = 'entry.png'
    big_path = 'bg.png'
    p = find_img(big_path,small_path)
    pyautogui.click(p)
   

利用 pynput 和 ctypes 监控鼠标右键点击,获取被点击的窗口句柄

from pynput import mouse

import ctypes


class MouseListener:

    def __init__(self):

        self.hwnd = None

        self.listener = mouse.Listener(on_click=self.on_click)


    def on_click(self, x, y, button, pressed):

        if button == mouse.Button.right and pressed:

            self.hwnd = ctypes.windll.user32.GetForegroundWindow()

            # Stop the listener

            return False


    def start(self):

        self.listener.start()

        self.listener.join()  # Block until the listener is stopped


# Usage:

listener = MouseListener()

listener.start()

print(f'Window handle: {listener.hwnd}')