0
我想創建一個程序,它可以清除我的帳戶讀取多個網站的列表,並將它們添加到我的Safari
閱讀列表中。但是,我不能只使用普通鏈接來抓取,因爲它需要登錄。如何使用網絡爬蟲/刮板登錄?
我該如何克服這個問題?
我想創建一個程序,它可以清除我的帳戶讀取多個網站的列表,並將它們添加到我的Safari
閱讀列表中。但是,我不能只使用普通鏈接來抓取,因爲它需要登錄。如何使用網絡爬蟲/刮板登錄?
我該如何克服這個問題?
您可能正在使用HTTP GET消息來加載HTML頁面。爲了登錄,具有正確憑據(用戶名和密碼)的HTTP POST消息將有所幫助。
下面是一個HTTP POST消息的例子登錄到社交網站:
post_message = ('POST /accounts/login//HTTP/1.1\r\n'
'Host: www.fakebook.com\r\n'
'Connection: keep-alive\r\n'
'Content-length: ' + contentlength +'\r\n'
'Origin: http://'+host+'\r\n'
'User-Agent: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.1058$
'Content-type: application/x-www-form-urlencoded\r\n'
'Accept-Encoding: gzip, deflate\r\n'
'Cookie: csrftoken='+csrftoken+'; sessionid= '+sessionid+'\r\r\n\n')
# Add POST body to header.
post_message += ('username='+username+'&password='+password+'&csrfmiddlewaretoken='+csrftoken+'&next=/fakebook/\r\n\r\n')
您必須在您登錄到提取從HTML頁面的的SessionID和csrftoken網站。
有關HTTP狀態碼的更多信息,請參考:[http://www.jmarshall.com/easy/http/][1]