본문 바로가기
프로그래밍˙알고리즘/C#ㆍXamarin

[C# Windows 프로그래밍] 셀레니움으로 페이스북 친구추가 오토매크로 제작하기 예제

by 승주니 2020. 4. 28.
반응형

전 포스팅의 간단한 셀레니움 예제를 심화해서,

페이스북 자동친구추가 프로그램을 제작해보겠다.

 

시작전에

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번 새로고침 기능도 추가해준다.

 

테스트 영상 ▼

 

 

결과물

원래는 친구추가가 아무런 문구없이 되어야 정상이다.

(테스트하면서 친구추가를 너무 많이해서 친구추가가 안되는것임)

 

반응형

댓글