使用cookie模擬登入
1、有些網站需要登入後才能訪問某個頁面,在登入之前,你想抓取某個頁面內容,登陸前與登陸後是不同的,或者不允許的。
使用Cookie和使用代理IP一樣,也需要建立一個自己的opener。在HTTP包中,提供了cookiejar模組,用於提供對Cookie的支援。
2 將Cookie儲存到變數中
def getCookeis(): #declare a cookiejar object instance to save cookie cookie=cookiejar.CookieJar(); #create cookie processor by HTTPCookieProcessor object of urllib.request lib handler=request.HTTPCookieProcessor(cookie); #create opener opener=request.build_opener(handler); #open web page response=opener.open('http://www.baidu.com') for item in cookie: print('Name=%s' %item.name) print('Value=%s' %item.value)
3、儲存Cookie到檔案
def getCookiesToTxt(): filename = '..\\file\cookie.txt' cookie = cookiejar.MozillaCookieJar(filename) handler=request.HTTPCookieProcessor(cookie) opener = request.build_opener(handler) response = opener.open('http://www.baidu.com') #ignore_discard:even if the cookie will be discared, it will be preserved #ignore_expires:if cookies exits in the file,overwrite the original file cookie.save(ignore_discard=True, ignore_expires=True)
4、從檔案中獲取Cookie並訪問
def getCookiesFromTxt(): filename = '..\\file\cookie.txt' #create MozillaCookieJar instance object cookie = cookiejar.MozillaCookieJar() #get cookie from the file to variables cookie.load(filename, ignore_discard=True, ignore_expires=True) handler=request.HTTPCookieProcessor(cookie) opener = request.build_opener(handler) response = opener.open('http://www.baidu.com') print(response.read().decode('utf-8'))
5、利用cookies模擬登入,這裡選擇的是http://www.biqukan.comhttps網站總是不成功,這個網站目前是http的
def simulateLogin():
#login url
login_url = 'http://www.biqukan.com/user/login.php?action=login&usecookie=1&url=http://www.biqukan.com/'
#User-Agent infromation
user_agent = r'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36'
#Headers information
head = {'User-Agnet': user_agent, 'Connection': 'keep-alive'}
#login Form_Data information
Login_Data = {}
Login_Data['password'] = 'yourpassword'
Login_Data['username'] = 'yourname'
#convert to standard format
logingpostdata = parse.urlencode(Login_Data).encode('utf-8')
cookie = cookiejar.CookieJar()
cookie_support = request.HTTPCookieProcessor(cookie)
opener = request.build_opener(cookie_support)
req1 = request.Request(url=login_url, data=logingpostdata, headers=head)
data_url = 'http://www.biqukan.com/user/bookcase.php'
req2 = request.Request(url=data_url, headers=head)
try:
response1 = opener.open(req1)
response2 = opener.open(req2)
html = response2.read().decode('gbk')
print (html)
except error.URLError as e:
if hasattr(e, 'code'):
print("HTTPError:%d" % e.code)
elif hasattr(e, 'reason'):
print("URLError:%s" % e.reason)
相關推薦
cookie模擬登入
我這裡使用的是python中的requests.get(url,headers,cookies). 其中headers和cookies都是字典形式。headers作用是模擬瀏覽器,告訴伺服器我不是爬蟲。cookies作用是模擬使用者,告訴伺服器我不是機器人,我是某某使用者。 以知乎為例,he
使用cookie模擬登入用法之cookiejar 在urllib中的使用
# -*- coding: utf-8 -*- """ Created on Fri May 25 16:36:36 2018 @author: Administrator """ from http import cookiejar from urllib import request fro
爬蟲使用cookie模擬登入
使用cooklelib庫和Httpcookieprocessora模擬登入 Cookie是指網站伺服器為了辨別使用者身份和進行 Session跟蹤,而儲存在使用者瀏覽器的文字檔案, Cookie可以保持登入資訊到使用者下次與伺服器的會話。 這裡以人人網為例。人人網中,要訪回某個人的主頁,必須先登入才
採用cookie模擬登入csdn網站
有些網站需要填寫賬戶和密碼,如果直接爬去網頁資訊,自然是進不去了,這裡採用cookiejar工具來實現這個目的 import urllib.request, urllib.parse, urllib.
在scrapy上使用cookie模擬登入
下面的例子模擬登入知乎的個人設定頁面 設定代理池 scrapy + tor #安裝tor sudo apt-get install tor sudo /etc/init.d/tor restar
使用cookie模擬登入
1、有些網站需要登入後才能訪問某個頁面,在登入之前,你想抓取某個頁面內容,登陸前與登陸後是不同的,或者不允許的。 使用Cookie和使用代理IP一樣,也需要建立一個自己的opener。在HTTP包中,提供了cookiejar模組,用於提供對Cookie的支援。 2
scrapy獲取cookie,並用cookie模擬登入人人網,爬取資料
1. 先用帳號密碼登入人人網,檢視元素,重新整理頁面,network中找第一個網頁請求,並檢視請求cookie 2.複製貼上修改格式 爬蟲程式碼如下: -*- coding: utf-8 -*- import scrapy class RenrenSpider(
Scrapy中使用cookie免於驗證登入和模擬登入
Scrapy中使用cookie免於驗證登入和模擬登入 引言 python爬蟲我認為最困難的問題一個是ip代理,另外一個就是模擬登入了,更操蛋的就是模擬登入了之後還有驗證碼,真的是不讓人省心,不過既然有了反爬蟲,那麼就有反反爬蟲的策略,這裡就先介紹一個cookie模擬登陸,後續還有se
爬蟲入門,模擬登入,動態token,攜帶cookie,密文加密,登入拉勾網,簡單爬蟲案例
import requests import re #匯入相應的庫檔案 headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64
Selenium新增Cookie模擬無驗證碼登入
最近爬蟲碰見需要用selenium模擬登入,有驗證碼滑塊+圖片點選驗證,在解決過程中發現一篇很好的示例,雖然是無驗證碼的那種,但是還不錯,先記下來! 程式碼及註釋如下: #!coding=utf-8 import time from selenium import webdriver
帶cookie訪問伺服器實現模擬登入
當我們需要抓取需要登入的網站的資訊或者實現模擬登入時,我們需要得到第一次登入網站的cookie,以便於下次登入可以不用post引數實現登入,只要將cookie放入標頭檔案就好,這是之前寫的模擬登入學校教務的程式碼,記錄以便查閱。 public String
scrapy知乎模擬登入和cookie登入
模擬登入# -*- coding: utf-8 -*- import scrapy from scrapy import cmdline #from scrapy.spiders import CrawlSpider import scrapy from scrap
Java爬蟲(三)-- httpClient 模擬登入 + cookie 登入狀態管理
前言 前面兩章內容闡述了httpClient怎麼模擬Http請求和如何解析頁面。 接下去會講在一些實戰中遇到的問題。 現在回到我的開發摸索之路,之前說到我所爬取的網頁是某個險企提供給合作公司的一個頁面,通過賬號登入然後爬取指定的資料。 這裡就出現本章要寫
nginx配置代理,包含Cookie,模擬登入
加入下面的配置, 主要配置允許跨域訪問,以及設定代理Cookie, 重點引數:proxy_set_header Cookie / Access-Control-Allow-Origin/ Access-Control-Allow-Credentials location
[Python]網路爬蟲(三):使用cookiejar管理cookie 以及 模擬登入知乎
大家好哈,上一節我們研究了一下爬蟲的異常處理問題,那麼接下來我們一起來看一下Cookie的使用。 為什麼要使用Cookie呢? Cookie,指某些網站為了辨別使用者身份、進行session跟蹤而儲存在使用者本地終端上的資料(通常經過加密) 比如說有些網站需要登入後才
使用cookie繞過驗證碼進行模擬登入
1.工具 httpClient jar包 任意抓包工具 推薦 firefox的 firebug(非常好用) 在使用httpClient進行模擬登入時,有時候會遇到需要輸入驗證碼的情況。而對驗證碼進行識別的方法既費時效果還不好。這裡提供一個取巧的方法,即使用
request post 模擬登入 csdn 獲取儲存cookie
# -*- coding=utf-8 -*- import requests from lxml import etree headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) Apple
urllib庫利用cookie實現模擬登入慕課網
思路 1.首先在網頁中使用賬戶和密碼名登入慕課網 2.其次再分析請求頭,如下圖所示,獲取到請求URL,並提取出cookie資訊,儲存到本地 3.最後在程式碼中構造請求頭,使用urllib.request傳送包含cookie資訊的請求 原始碼 # !/usr/bin/e
Java 模擬登入新浪微博(Cookie)
最近需要對微博的資料進行一些收集, 首先從登入開始 1. 通過GET請求login public static String login(String username, String password) throws MalformedURLExcept
Scrapy框架模擬登入之cookie登入
新建douban專案 通過charles 獲取到cookie後 貼上進入pycharm, 尼瑪格式混亂,無奈手工新增冒號,同時將=號換成:號。。。 cookies = { "bid": "EP3q1inffgg", "__yadk_uid" : "bI