Python 을 사용 하여 위 챗 한 박자 기능 을 실현 하 는 사고 코드
최근 위 챗 은'찍 어 봐'로 각종 위 챗 그룹 에 불 을 지 폈 으 며,빠르게 검색 어 화제 랭 킹 을 차지 했다.
그래서 저 는 갑자기 이상 한 생각 이 들 었 습 니 다.pyhton 으로 위 챗 을 자동 으로 실현 하기 로 했 습 니 다.정말 성공 할 줄 은 몰 랐 습 니 다.전체 과정 에서 30 줄 의 코드 를 사 용 했 습 니 다.다음은 구체 적 인 실현 절 차 를 소개 하 겠 습 니 다.
본문의 하 이 라이트:
appium 으로 핸드폰 을 모 의 조작 하고 캡 처 하 며 이미지 인식 을 통 해 친구 의 얼굴 좌 표를 찾 고 마지막 으로 appium 으로 두상 좌 표를 두 번 눌 러'한 번 찍 기'기능 을 실현 한다.
구체 적 인 절차:
1.appium 으로 핸드폰 조작
appium 의 설치 및 사용 방법 에 대해 이전에 이미 많이 썼 습 니 다.여 기 는 더 이상 군말 하지 않 고 바로 작업 절차 에 들 어 갑 니 다.
1.python 으로 위 챗 을 엽 니 다.코드 는 다음 과 같 습 니 다.
desired_caps = {"platformName": "Android",
"deviceName": "VOG-AL00",
"appPackage": "com.tencent.mm",
"appActivity": ".ui.LauncherUI",
"noReset": "true",
"fullReset": "false"}
server = 'http://localhost:4723/wd/hub'
driver = webdriver.Remote(server, desired_caps)
난점 은 desiredcap 매개 변수의 설정 을 소개 합 니 다.platformName:장치 운영 체제
2.시 뮬 레이 션 더 블 클릭 두상
1.원리 소개
우 리 는 모두 알 고 있 습 니 다.위 챗 의'한 박자 찍 기'는 친구 의 얼굴 을 두 번 눌 러 서 이 루어 진 것 입 니 다.다음 그림 과 같 습 니 다.
두상 을 더 블 클릭 하려 면 먼저 두상 이 화면 에 있 는 좌 표를 얻어 야 한다.
여기 함수 하나 소개 해 드릴 게 요.
Python-opencv 2 기반 대상 포 지 셔 닝 모듈:Aircv 사용 findtemplate 함수,대상 이미지 가 원본 이미지 에 있 는 좌표 범 위 를 찾 을 수 있 습 니 다.용법 은 다음 과 같 습 니 다.
def matchImg(imgsrc, imgobj, confidencevalue=0.7):
imsrc = ac.imread(imgsrc)
imgobj = ac.imread(imgobj)
match_result = ac.find_template(imsrc, imgobj,confidencevalue)
return match_result
그 중에서 imgsrc=원본 그림 경로,imgobj=찾 아야 할 대상 그림 경로.찾 지 못 하면 matchresult=None;
찾 으 면 다음 데 이 터 를 되 돌려 줍 니 다.
{
'result':(570.0, 2771.0), 'rectangle': ((30, 1601), (30, 3941), (1110, 1601), (1110,3941)), 'confidence': 0.999999463558197
}
그 중:클 라 이언 트 appium 에서 화면 에 있 는 픽 셀 이 140 인지 확인 할 수 있 습 니 다.×140 우 리 는 먼저 친구 의 프로필 사진 을 저장 한 다음 에 ps 로 프로필 사진 을 픽 셀 로 바 꿀 수 있다.
그 다음 에 프로그램 에서 while 순환 을 만 들 고 첫 번 째 단계 가 완 료 된 토대 에서 친구 채 팅 상자 에 수 동 으로 들 어 갑 니 다(사실은 친구 의 얼굴 을 식별 하여 자동 으로 들 어 갈 수 있 습 니 다)
appium 을 통 해 핸드폰 화면 을 캡 처 하고 src.png 라 고 명명 하여 이미지 경로(obj.png)와 1 의 검 측 함 수 를 가 져 옵 니 다.
driver.save_screenshot('src.png')
imgsrc='src.png'
imgobj='obj.png'
match_result=matchImg(imgsrc, imgobj)
None 로 돌아 가면 채 팅 창 에서 친구 의 얼굴 이 감지 되 지 않 고 계속 순환 한 다 는 뜻 입 니 다.두상 좌표 가 감지 되면 되 돌아 오 는 좌표 데 이 터 를 분석 하고 for 순환 으로 좌표 위 치 를 더 블 클릭 합 니 다.
if match_result is not None:
result = [match_result['rectangle'][0], match_result['rectangle'][3]]
for i in range(2):
driver.tap(result,100)
print(' ')
else:
print(' ')
이렇게 해서 큰 성 과 를 거 두 었 다.쉽 죠?
소결:본 고 는 python 으로 위 챗 의'찍 어 봐'를 모 의 하 는 주요 방향 을 소개 했다.관심 이 있 는 것 은 이어서 할 수 있 고 재 미 있 는 기능 을 실현 할 수 있다.예 를 들 어 위 챗 단체 채 팅 을 감시 하고 메 시 지 를 보 내 는 사람 이'찍 어 봐'하거나 단체 채 팅 사용 자 를 한 번 씩 찍 어 봐 도 매우 재미있다.
파 이 썬 을 사용 하여 위 챗 의'찍 어 봐'를 실현 하 는 사고 에 관 한 상세 한 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 python 위 챗 의 촬영 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.