Advertisement
Guest User

Untitled

a guest
May 5th, 2018
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.66 KB | None | 0 0
  1. Imports System.IO
  2. Imports System.Net
  3. Imports System.Text
  4. Imports System.Text.RegularExpressions
  5.  
  6. Module Module1
  7. Const UserAgent As String = "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36"
  8. Public token As String = ""
  9. Dim CookieJar2 As New CookieContainer()
  10. Public Function InstagramLogin(UserName As String, Password As String, Cookies As CookieContainer) As Boolean
  11. Const LoginURL As String = "https://www.instagram.com/accounts/login/"
  12. Const LoginPostURL As String = LoginURL & "ajax/"
  13.  
  14. Dim LoginPage As String = HttpGet(LoginURL, Cookies)
  15. Dim CSRFToken As String = Regex.Match(LoginPage, """csrf_token"":""(\w+)""").Groups(1).Value
  16.  
  17. UserName = WebUtility.UrlEncode(UserName)
  18. Password = WebUtility.UrlEncode(Password)
  19. Dim Post As String = String.Format("username={0}&password={1}", UserName, Password)
  20. Dim PostData() As Byte = Encoding.ASCII.GetBytes(Post)
  21.  
  22. Dim Request As HttpWebRequest
  23. Request = DirectCast(WebRequest.Create(LoginPostURL), HttpWebRequest)
  24. Request.Method = "POST"
  25. Request.KeepAlive = True
  26. Request.CookieContainer = Cookies
  27. Request.ContentType = "application/x-www-form-urlencoded"
  28. Request.Accept = "*/*"
  29. Request.UserAgent = UserAgent
  30. Request.ContentLength = PostData.Length
  31. Request.Referer = LoginURL
  32. Request.AllowAutoRedirect = True
  33. token = CSRFToken
  34. Request.Headers.Add("X-Instagram-AJAX", "1")
  35. Request.Headers.Add("X-CSRFToken", CSRFToken)
  36. Request.Headers.Add("X-Requested-With", "XMLHttpRequest")
  37.  
  38. Request.GetRequestStream().Write(PostData, 0, PostData.Length)
  39. Dim response As HttpWebResponse = Request.GetResponse()
  40. Cookies.Add(Response.Cookies)
  41. Dim AuthResponse As String = ""
  42. Using reader As New StreamReader(response.GetResponseStream())
  43. While Not reader.EndOfStream
  44. AuthResponse &= reader.ReadLine()
  45. End While
  46. End Using
  47.  
  48. Return AuthResponse.Contains("""authenticated"": true")
  49. End Function
  50.  
  51. Public Function HttpGet(Page As String, Cookies As CookieContainer, Optional Referrer As String = Nothing) As String
  52. Dim Request As HttpWebRequest
  53. Request = DirectCast(WebRequest.Create(Page), HttpWebRequest)
  54. Request.Method = "GET"
  55. Request.KeepAlive = True
  56. Request.CookieContainer = Cookies
  57. Request.ContentType = "application/x-www-form-urlencoded"
  58. Request.UserAgent = UserAgent
  59. Request.Referer = Referrer
  60. Request.AllowAutoRedirect = False
  61. Request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q="
  62. Request.Headers.Add("method", "GET")
  63. Request.Headers.Add("scheme", "https")
  64. Request.Headers.Add("cache-control", "max-age=0")
  65. Request.Headers.Add("upgrade-insecure-requests", "1")
  66. Request.Headers.Add("path", "/accounts/edit/")
  67. Request.Headers.Add("authority", "www.instagram.com")
  68. Request.Headers.Add("X-Instagram-AJAX", "1")
  69. Request.Headers.Add("X-CSRFToken", token)
  70. Request.Headers.Add("X-Requested-With", "XMLHttpRequest")
  71. Dim Response As HttpWebResponse
  72. Response = DirectCast(Request.GetResponse(), HttpWebResponse)
  73. Cookies.Add(Response.Cookies)
  74. Dim Reader As New StreamReader(Response.GetResponseStream())
  75. Return Reader.ReadToEnd()
  76. End Function
  77.  
  78. Private Function HttpPost(Page As String, Data As String, Cookies As CookieContainer, Optional Referrer As String = Nothing) As String
  79. Dim Bytes() As Byte = Encoding.ASCII.GetBytes(Data)
  80.  
  81. Dim Request As HttpWebRequest
  82. Request = DirectCast(WebRequest.Create(Page), HttpWebRequest)
  83. Request.Method = "POST"
  84. Request.KeepAlive = True
  85. Request.CookieContainer = Cookies
  86. Request.ContentType = "application/x-www-form-urlencoded"
  87. Request.Accept = "*/*"
  88. Request.UserAgent = UserAgent
  89. Request.Referer = Referrer
  90. Request.AllowAutoRedirect = True
  91. Request.ContentLength = Bytes.Length
  92.  
  93. Dim Request_Stream As Stream = Request.GetRequestStream()
  94. Request_Stream.Write(Bytes, 0, Bytes.Length)
  95. Request_Stream.Close()
  96.  
  97. Dim Response As HttpWebResponse
  98. Response = DirectCast(Request.GetResponse(), HttpWebResponse)
  99. Cookies.Add(Response.Cookies)
  100.  
  101. Dim Reader As New StreamReader(Response.GetResponseStream())
  102. Return Reader.ReadToEnd()
  103. End Function
  104. End Module
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement