- 로그인 -
Public Function NaverLogin(ID As String, PW As String) As Boolean
Winhttp.Open "POST", "http://nid.naver.com/nidlogin.login"
Winhttp.SetRequestHeader "Referer", "https://nid.naver.com/nidlogin.login"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Winhttp.Send "enctp=2&svctype=0&id=" & ID & "&pw=" & PW
If InStr(StrConv(Winhttp.ResponseBody, vbUnicode), "http://static.nid.naver.com/sso/cross-domain.nhn") Then
NaverLogin = True
Else
NaverLogin = False
End If
End Function
- 메일 전송 -
Public Function Mail(Email As String, Subject As String, Body As String) As Boolean
Winhttp.Open "POST", "http://mail.naver.com/json/write/send/"
Winhttp.SetRequestHeader "Referer", "http://mail.naver.com/?n="
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=utf-8"
Winhttp.Send "senderName=&to=" & Email & "&cc=&bcc=&subject=" & Subject & "&body=" & Body & "&contentType=html&charset=AUTO&sendSeparately=false&saveSentBox=true&type=new&fromMe=0&
attachID=tsFCWrwm_LYmKoumKSevKquq7qUw7XU-aHicpHUTbo2-b4CvboMlaA2rFqu.&reserveDate=&reserveGMT=&reserveTime=&calendarVal=&autoSaveMailSN=&
addReceiverAddress=false&attachCount=0&attachSize=0&bigfile=0&sessionID=&seqNums=&priority=0&
ndriveFileInfos=&lists=&srvflag=&u="
If InStr(Winhttp.ResponseText, "메일을") Then
Mail = True
Else
Mail = False
End If
End Function
- 쪽지 전송 -
Public Function Note(Target As String, Body As String) As Boolean
Winhttp.Open "POST", "http://m.note.naver.com/mobile/mobileCaptchaViewCheck.nhn?"
Winhttp.SetRequestHeader "Referer", "http://m.note.naver.com/mobile/mobileSendNoteForm.nhn?returnUrl=http%3a%2f%2fm.note.naver.com%2fmobile%2fmobileReceiveList.nhn"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=utf-8"
Winhttp.Send "fromUrl=%2Fmobile%2FmobileSendNoteForm.nhn%3FselfSend%3D0&returnUrl=http%3A%2F%2Fm.note.naver.com%2Fmobile%2FmobileReceiveList.nhn&svcType=0&svcId=&svcName=&svcTitle=&svcLink=¬e=" & UrlEncode(Body) & "&targetId=" & Target & "&isBackup=true&isReplyNote=false"
If InStr(Winhttp.ResponseText, "성공") Then
Note = True
Else
Note = False
End If
End Function
- 덧글 작성 -
Public Function Comment(ClubID As String, ART As String, Mypers As String, Body As String) As String
Winhttp.Open "POST", "http://cafe.naver.com/CommentPost.nhn"
Winhttp.SetRequestHeader "Referer", "http://cafe.naver.com/ArticleRead.nhn?clubid=" & ClubID & "&articleid=" & ART & "&referrerAllArticles=true"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Winhttp.Send "content=" & UrlEncode(Body) & "&clubid=" & ClubID & "&articleid=" & ART & "&m=write&commentid=&refcommentid=&emotion=" & Mypers & "&orderby=asc&replyToMemberId=&replyToNick="
End Function
- 게시글 추천 -
Public Function UpArt(ClubID As String, Num As String) As Boolean
WinHttp.Open "POST", "http://cafe.naver.com/UpArticle.nhn"
WinHttp.SetRequestHeader "Referer", "http://cafe.naver.com/ArticleRead.nhn?clubid=" & ClubID & "&articleid=" & Num & "&referrerAllArticles=true"
WinHttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"
WinHttp.Send "m=upsertUpArticle&clubid=" & ClubID & "&articleid=" & Num & "&menuid=&toJSON=function+%28%29+%7b%0a++++return+JINDO.obj2json%28this%29%3b%0a%7d"
If InStr(StrConv(WinHttp.ResponseBody, vbUnicode), "uparticle.success") Then
UpArt = True
Else
UpArt = False
End If
End Function
- QR코드생성 -
Public Function MakeQR(ID As String, Link As String, Title As String, Color As String) As Boolean
'Link와 Title은 사전에 미리 값을 받아와야함.
Link = Replace(Link, "%3A%2F%2F", "://")
Title = Replace(Title, "%20", " ")
Winhttp.Open "POST", "http://qr.naver.com/code/createCode.nhn"
Winhttp.SetRequestHeader "Referer", "http://qr.naver.com/code/createForm.nhn"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=utf-8"
Winhttp.Send "qrNaverId=" & ID & "&qrcdNo=&qrCodeUrl=&qrSaveStatusCd=79&qrColorBorderCd=" & Color & "&qrDirectLinkTypeCd=29&qrDirectLink=http%3A%2F%2F" & Link & "&qrSearchWord=&qrAttachOrder=L%7CD%7CI%7CV%7CM%7CC&qrSubjectFontTypeCd=157&qrLogoImgUrl=&qrLandingSkinTypeCd=177&qrAttachImgViewTypeCd=
164&qrName=" & Title & "&qrLogoTypeCd=24&qrSubject=&qrAttachLinkList[0].linkSubject=&qrAttachLinkList[0].linkUrl=&qrAttachLinkList[1].linkSubject=&qrAttachLinkList[1].linkUrl=&qrAttachLinkList[2].linkSubject=&qrAttachLinkList[2].linkUrl=&qrAttachLinkList[3].linkSubject=&qrAttachLinkList[3].linkUrl=&qrAttachLinkList[4].linkSubject=&qrAttachLinkList[4].linkUrl=&qrDesc="
If InStr(Winhttp.ResponseText, "success") Then
MakeQR = True
Else
MakeQR = False
End If
End Function
- 카페초대장전송 -
Public Function CafeInvite(SendID As String, CafeToken As String, ClubID As String, Subject As String, Body As String) As Boolean
Winhttp.Open "POST", "http://cafe.naver.com/CafeInviteView.nhn?m=view&inviteid=" & SendID & ""
Winhttp.Send
CafeToken = Split(Split(StrConv(Winhttp.ResponseBody, vbUnicode), "name=""cafeCookieToken"" value=""")(1), """>")(0)
CafeToken = Replace(Replace(CafeToken, "/", "%2F"), "+", "%2B")
Winhttp.Open "POST", "http://cafe.naver.com/CafeInviteViewResult.nhn"
Winhttp.SetRequestHeader "Referer", "http://cafe.naver.com/CafeInviteView.nhn?m=view&inviteid=" & SendID & ""
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Winhttp.Send "webworkCookieTokenName=cafeCookieToken&cafeCookieToken=" & CafeToken & "&inviteid=" & SendID & "&invitecafe=" & ClubID & "&title=" & UrlEncode(Subject) & "&content=" & UrlEncode(Body) & ""
If InStr(StrConv(Winhttp.ResponseBody, vbUnicode), "카페 초대장 보내기 완료") Then
CafeInvite = True
Else
CafeInvite = False
End If
End Function
- 카페게시글작성(PC) -
Public Function CafeWrite(ClubID As String, TempClubID, TempID As String, Mypers As String, TempCode As String, SaveID As String, MenuID As String, Subject As String, Body As String) As String
Winhttp.Open "GET", "http://cafe.naver.com/" & ClubID & ""
Winhttp.Send
TempClubID = Split(Split(StrConv(Winhttp.ResponseBody, vbUnicode), "g_sClubId = """)(1), """;")(0)
Winhttp.Open "POST", "http://cafe.naver.com/ArticleWrite.nhn?clubid=" & TempClubID & "&menuid=&boardtype=L&m=write"
Winhttp.Send
TempID = Split(Split(StrConv(Winhttp.ResponseBody, vbUnicode), "name=""clubTempId"" value=""")(1), """ />")(0)
TempID = Replace(TempID, "%2B", "+")
Mypers = Split(Split(StrConv(Winhttp.ResponseBody, vbUnicode), "id=""emotion"" value=""")(1), """ />")(0)
TempCode = Split(Split(StrConv(Winhttp.ResponseBody, vbUnicode), "name=""alimCode"" value=""")(1), """ />")(0)
TempCode = Replace(TempCode, "%3D", "=")
Winhttp.Open "POST", "http://cafe.naver.com/TempsavePost.nhn"
Winhttp.SetRequestHeader "Referer", "http://cafe.naver.com/ArticleWrite.nhn?clubid=" & TempClubID & "&menuid=" & MenuID & "&boardtype=L&m=write"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=utf-8"
Winhttp.Send "tempsaveid=&menuid=" & MenuID & "&headid=&subject=" & UrlEncode(Subject) & "&content=" & UrlEncode(Body) & "&preAccessMenuid=" & MenuID & "&clubid=" & TempClubID & "&menuidForList=" & MeunID & "&clubTempId=" & TempID & "&personacon=" & Mypers & "&boardtype=L&page=&m=&attachpollyn=&attachPollids=&attachfileyn=&attachimageyn=&attachfiles=&
attachsizerealsum=0&attachmodifylist=&attachsizes=&attachimagesizesum=0&attachfilesizesum=0&
scrapedyn=&attachinfolist=&attachinfo=0&attachmaplist=&attachmovie=&attachmovielist=&
article.leveragecode=0&article.attachCalendarList=&attachCalendar=&attachedCalendar=&owfs=false&
ndriveid=0&hadNaverPoll=&touchalimi=false&articleAlimi.replyarticlecnt=10
&articleAlimi.commentcnt=10&articleAlimi.starthour=0&articleAlimi.endhour=8
&article.musicplayerAttachmentSet.musicplayerAttachmentStruct=&article.attachMusic=
&appPost=&alimCode=" & TempCode & "¶meterString=&article.templatecode=0"
SaveID = Split(Split(Winhttp.ResponseText, """tempsaveid"":")(1), vbNewLine)(0)
Winhttp.Open "POST", "http://cafe.naver.com/ArticlePost.nhn"
Winhttp.SetRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1"
Winhttp.SetRequestHeader "Referer", "http://cafe.naver.com/ArticleWrite.nhn?clubid=" & TempClubID & "&menuid=" & MenuID & "&boardtype=L&m=write"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Winhttp.Send "" & _
"preAccessMenuid=" & MenuID & "&clubid=" & TempClubID & "&menuidForList=" & MenuID & "&clubTempId=" & TempID & "&personacon=" & Mypers & "&boardtype=L&page=&m=write&attachpollyn=&attachPollids=&attachfileyn=&attachimageyn=
&attachfiles=&attachsizerealsum=0&attachmodifylist=&attachsizes=&attachimagesizesum=0
&attachfilesizesum=0&scrapedyn=&attachinfolist=&attachinfo=0&attachmaplist=&attachmovie=
&attachmovielist=&article.leveragecode=0&article.attachCalendarList=&attachCalendar=
&attachedCalendar=&tempsaveid=" & SaveID & "&owfs=false&ndriveid=0&hadNaverPoll=&touchalimi=false&articleAlimi.replyarticlecnt=10
&articleAlimi.commentcnt=10&articleAlimi.starthour=0&articleAlimi.endhour=8
&article.musicplayerAttachmentSet.musicplayerAttachmentStruct=&article.attachMusic=
&appPost=&alimCode=" & TempCode & "¶meterString=&menuid=" & MenuID & "&headid=&subject=" & UrlEncode(Subject) & "&content=" & UrlEncode(Body) & "&tagnames=" & _
"&openyn=N&searchopen=1&replyyn=Y&scrapyn=N&metoo=false&autosourcing=0&ccl=0
&ir_leverageOptions_leveragecode=0&rows_val=4&cols_val=4&border_val=1&borderColorCode=%23B7BBB5&backColorCode=%23FFFFFF&keyword=&keyword_re=&replace=&article.templatecode=0"
End Function
- 카페게시글작성(Mobile) -
Public Function MCafeWrite(ClubID As String, MenuID As String, Subject As String, Body As String, Mypers As String) As String
Winhttp.Open "POST", "http://m.cafe.naver.com/ArticlePost.nhn"
Winhttp.SetRequestHeader "Referer", "http://m.cafe.naver.com/ArticleWrite.nhn?m=write&clubid=" & ClubID & "&menuid="
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Winhttp.Send "content=" & Body & "&menuid=" & MenuID & "&headid=&subject=" & Subject & "&clubid=" & ClubID & "&articleid=&m=write&openyn=N&replyyn=Y&searchopen=0&scrapyn=Y&rclick=0&autosourcing=0&ccl=0
&metoo=false&attachfiles=&attachimageyn=&personacon=" & Mypers & "&tempsaveid="
End Function
- 카페게시글삭제 -
Public Function Delete(DB As String, CIubID As String)
WinHttp.Open "POST", "http://cafe.naver.com/ArticleDelete.nhn"
WinHttp.SetRequestHeader "Referer", "http://cafe.naver.com/ArticleRead.nhn?clubid=" & ClubID & "&articleid=" & DB & "&page=&menuid=&boardtype=L"
WinHttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
WinHttp.Send "articleid=" & DB & "&page=&menuid=&boardtype=L&clubid=" & ClubID & ""
End Function
- 블로그포스트작성 -
Public Function BlogWrite(ID As String, Menu As String, Subject As String, Body As String) As Boolean
Winhttp.Open "POST", "http://blog.naver.com/PostWrite.nhn"
Winhttp.SetRequestHeader "Referer", "http://blog.naver.com/PostWriteForm.nhn?Redirect=Write&blogId=" & ID & "&redirect=Write&widgetTypeCall=true"
Winhttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Winhttp.Send "" & _
"appId=&tempLogNo=&blogId=" & ID & "&post.logNo=&post.sourceCode=0&post.contents.contentsValue=" & UrlEncode(Body) & " &post.postOptions.openType=2&post.postOptions.commentYn=true&post.postOptions.isRelayOpen=true
&post.postOptions.sympathyYn=false&post.postOptions.outSideAllowYn=true
&post.postOptions.me2DayLeverageUseYn=false" & _
"&post.postOptions.searchYn=true&post.postOptions.rssOpenYn=true&post.postOptions.scrapType=2
&post.postOptions.ccl.commercialUsesYn=false&post.postOptions.ccl.contentsModification=0
&post.music.subType=&post.postOptions.isContinueSaved=true&accessCategoryNo=
&accessParentCategoryNo=&post.postOptions.isExifEnabled=false&post.category.categoryNo=" & Menu & "&post.title=" & UrlEncode(Subject) & "&post.trackback.trackbackUrl=&ir1=&char_preview=&se2_tbp3=on&post.directorySeq=0&post.tag.names
=&openType=2&post.postWriteTimeType=now&"
If InStr(Winhttp.ResponseText, "refresh") Then
BlogWrite = True
Else
BlogWrite = False
End If
End Function