[개발 일지]
2021.04.06 - [Language/Python] - [파이썬/셀레니움] 인스타그램 봇 만들기 - 1일차 : 셀레니움 설치 및 기초
2021.04.10 - [Language/Python] - [파이썬/셀레니움] 인스타그램 봇 만들기 - 2일차 : 알고리즘 구체화
2021.04.10 - [Language/Python] - [파이썬/셀레니움] 인스타그램 봇 만들기 - 3일차 : 코드 개선
2021.04.11 - [Language/Python] - [파이썬/셀레니움] 인스타그램 봇 만들기 - 4일차 : 알고리즘 개선
2021.04.13 - [Language/Python] - [파이썬/셀레니움] 인스타그램 봇 만들기 - 5일차 : Pyqt GUI, 패키징
[중요 기능]
2022.01.05 - [Language/Python] - [파이썬/셀레니움] 인스타그램 봇 만들기 - Pqty 리스트 추가, 삭제
해시태그, DM 리스트 추가 삭제


내가 원하는 해시태그를 타게팅하고 상대에게 원하는 DM을 보내기 위해서는
그 내용들을 담아둠과 동시에 추가와 삭제 기능이 필요합니다.
위 사진을 보면 알겠지만 해시태그와 DM내용의 모습과 기능이 완벽하게 일치하는 것을 볼 수 있습니다.
즉 하나만 만들어 두면 나머지 하나는 대충 복붙으로 쉽게 구현이 가능합니다.
그렇다면 어떻게 구성되고 작동하는지 아래의 순서대로 알아보겠습니다.
- 객체 클래스 설정
- 초기화 및 함수 선언
- 리스트의 데이터 사용하기
1. 객체 클래스 설정
각 객체들의 클래스는 다음과 같이 필요합니다.
내용을 기입할 LineEdit 하나, 데이터를 담아둘 List 하나, 추가와 삭제 기능을 할 버튼 2개.
아래와 같이 LineEdit과 List, 버튼들의 모양을 잘 잡아준 뒤 객체 이름을 설정합니다.




2. 초기화 및 함수 선언
우선 버튼들을 초기화 시켜주며 함수들과 연결해줍니다.
그 다음 해시태그를 추가시키는 addList_hashtag 함수에 List에 LineEdit의 정보들을 담아주는 코드를 작성합니다.
해시태그를 삭제하는 함수는 currentRow()를 통해 리스트에서 선택한 행의 위치를 받아온 뒤
takeItem() 메소드를 통해 파라미터로 행의 정보를 넣어주면 됩니다.
class WindowClass(QMainWindow, form_class):
def __init__(self):
super().__init__()
self.setupUi(self)
self.btn_hashtag.clicked.connect(self.addList_hashtag)
self.btn_hashtag_del.clicked.connect(self.removeItem_hashtag)
...
def addList_hashtag(self) :
self.list_hashtag.addItem(self.line_hashtag.text())
def removeItem_hashtag(self) :
# ListWidget에서 현재 선택한 항목을 삭제할 때는 선택한 항목의 줄을 반환한 후,
# takeItem함수를 이용해 삭제합니다.
self.removeItemRow = self.list_hashtag.currentRow()
self.list_hashtag.takeItem(self.removeItemRow)
3. 리스트의 데이터 사용하기
마지막으로 이렇게 추가, 삭제한 리스트의 데이터를 불러오겠습니다.
아래와 같이 메인 기능을 하는 함수 안에 리스트에 존재하는 데이터들을 배열로 가공해줍니다.
def 함수명(self):
insta_hashtag = [ self.list_hashtag.item(t).text() for t in range(self.list_hashtag.count()) ]
간단하게 한줄을 사용해 데이터들을 배열에 담아주었습니다.
self.리스트명.count() 를 통해 데이터의 개수를 리턴받아 반복문을 돌려주며
self.리스트명.item(인덱스).text() 로 인덱스 번호에 일치하는 데이터를 리턴받아 배열에 저장해줍니다.
이후 이 배열은 사용자의 의도대로 사용하면 됩니다.
'Python' 카테고리의 다른 글
[파이썬/셀레니움] 인스타그램 봇 만들기 - 5일차 : Pyqt GUI, 패키징 (4) | 2021.04.13 |
---|---|
[파이썬/셀레니움] 인스타그램 봇 만들기 - 4일차 : 알고리즘 개선 (0) | 2021.04.11 |
[파이썬/셀레니움] 인스타그램 봇 만들기 - 3일차 : 코드 개선 (0) | 2021.04.10 |
[파이썬/셀레니움] 인스타그램 봇 만들기 - 2일차 : 알고리즘 구체화 (2) | 2021.04.10 |
[파이썬/셀레니움] 인스타그램 봇 만들기 - 1일차 : 셀레니움 설치 및 기초 (0) | 2021.04.06 |
댓글