반응형
전 포스팅의 간단한 셀레니움 예제를 심화해서,
페이스북 자동친구추가 프로그램을 제작해보겠다.
시작전에
Element (요소) : <tagname>content</tagname>
내용을 포함한 시작태그와 종료태그까지를 Element라고 한다.
이해가 되지않는다면 구글에 검색하여 찾아보는 것이 좋다.
var driverService = ChromeDriverService.CreateDefaultService();
driverService.HideCommandPromptWindow = true; //콘솔 보이지않게 설정
var options = new ChromeOptions();
이 코드는 맨위에 작성해둔다. 설명할때 코드들이 길어지므로 미리 작성해두었다.
사진과 같이 textBox1, textBox2, Button 한개를 생성해준다.
var driver = new ChromeDriver(driverService, options);
driver.Navigate().GoToUrl("https://m.facebook.com/login/?next&ref=dbl&fl&refid=8");
var id = driver.FindElementById("m_login_email");
var pw = driver.FindElementById("m_login_password");
var submit = driver.FindElementByName("login");
id.SendKeys(textBox1.Text);
pw.SendKeys(textBox2.Text);
submit.Click();
var형 id, pw, submit 변수에 각각의 ElementID값을 담아준다.
Submit은 ID값이 없어서 Name값으로 대체하였다.
ID,Name 뿐만아니라 여러가지 Element값으로 대체할 수 있다.
위의 코드를 작성하여 실행해보았다.
페이스북 로그인창이뜨고 ID, PW를 입력 후 Submit(로그인)이 되는 것을 확인했다.
Thread.Sleep(3000);
driver.Navigate().GoToUrl("https://m.facebook.com/friends/center/suggestions/?mff_nav=1");
[ 전에 작성한 로그인까지 되는 코드 아래에 그대로 이어서 이 코드를 작성하면 된다 ]
딜레이 3초 주고, 페이스북의 추천 친구추가 URL로 이동한다.
for (int i = 0; i < 100; i++)
{
for (int j = 0; j < 5; j++)
{
driver.Navigate().Refresh();
Thread.Sleep(1000);
var request = driver.FindElementByLinkText("친구 추가");
request.Click();
}
}
driver.Dispose();
친구추가를 100회할때까지 동작을 멈추지않는다. 5회당 1번 새로고침 기능도 추가해준다.
테스트 영상 ▼
원래는 친구추가가 아무런 문구없이 되어야 정상이다.
(테스트하면서 친구추가를 너무 많이해서 친구추가가 안되는것임)
반응형
'프로그래밍˙알고리즘 > C#ㆍXamarin' 카테고리의 다른 글
[C# Windows] 문자의 아스키코드값 바꿔서 표기 (간이 Encryptor) (0) | 2020.11.05 |
---|---|
[C# Windows 프로그래밍] C# dll파일을 제작/사용하는 방법 (How to make C# dll) (3) | 2020.05.30 |
[C# Windows 프로그래밍] 셀레니움으로 웹 자동화 프로그램 만들기 예제 (1) | 2020.04.28 |
[C# Windows 프로그래밍] 음성출력 하는방법 Speech.Synthesis클래스 (0) | 2020.04.27 |
[C# Windows 프로그래밍] 파일의 크기를 불러와서 처리하는 방법 (0) | 2020.04.27 |
댓글