欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)模擬瀏覽器請(qǐng)求及會(huì)話保持操作示例

 更新時(shí)間:2018年07月30日 10:05:37   作者:初行  
這篇文章主要介紹了Python實(shí)現(xiàn)模擬瀏覽器請(qǐng)求及會(huì)話保持操作,結(jié)合實(shí)例形式分析了Python基于urllib與urllib2模塊模擬瀏覽器請(qǐng)求及cookie保存會(huì)話相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python實(shí)現(xiàn)模擬瀏覽器請(qǐng)求及會(huì)話保持操作。分享給大家供大家參考,具體如下:

python下讀取一個(gè)頁面的數(shù)據(jù)可以通過urllib2輕松實(shí)現(xiàn)請(qǐng)求

import urllib2
print urllib2.urlopen('http://www.baidu.com').read()

涉及到頁面的POST請(qǐng)求操作的話需要提供頭信息,提交的post數(shù)據(jù)和請(qǐng)求頁面。

其中的post數(shù)據(jù)需要urllib.encode()一下,其實(shí)就是將字典轉(zhuǎn)換成“data1=value1&data2=value2”的格式。

import urllib
import urllib2
HEADER = {
 'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0',
 'Referer' : 'http://202.206.1.163/logout.do'
}
POSTDATA = {
 'data1': 'value1',
 'data2': 'value2'
}
HOSTURL = 'http://xxx.com'
enpostdata = urllib.urlencode(POSTDATA)
urlrequest = urllib2.Request(hosturl,enpostdata,HEADER)
urlresponse = urllib2.urlopen(urlrequest)
print urlresponse.read()

請(qǐng)求之后瀏覽器會(huì)有一個(gè)會(huì)話保持的過程,會(huì)話都是保存在一個(gè)cookie里面的,下一次頁面的請(qǐng)求會(huì)把cookie放到請(qǐng)求頭,如果cookie丟失會(huì)話也就斷開了。

在python下面需要設(shè)置一下cookie的保持

# cookie set
# 用來保持會(huì)話
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)

下面是將以上知識(shí)點(diǎn)匯總寫的一個(gè)庫文件,方便使用:

# filename: analogop.py
#!/usr/bin/python
# -*-coding:UTF-8 -*-
# author: 初行
# qq: 121866673
# mail: zxbd1016@163.com
# message: I need a python job
# time: 2014/10/5
import urllib
import urllib2
import cookielib
# cookie set
# 用來保持會(huì)話
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
# default header
HEADER = {
 'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0',
 'Referer' : 'http://202.206.1.163/logout.do'
}
# operate method
def geturlopen(hosturl, postdata = {}, headers = HEADER):
 # encode postdata
 enpostdata = urllib.urlencode(postdata)
 # request url
 urlrequest = urllib2.Request(hosturl, enpostdata, headers)
 # open url
 urlresponse = urllib2.urlopen(urlrequest)
 # return url
 return urlresponse

這個(gè)是測(cè)試文件,因?yàn)樽x者沒有測(cè)試環(huán)境,需要自己搭建或者找個(gè)網(wǎng)站測(cè)試:

#filename: test.py
from analogop import geturlopen
postd = {
 'usernum': '2011411111',
 'upw': '124569',
 'userip': '192.168.10.1',
 'token': 'xxx'
}
urlread = geturlopen('http://127.0.0.1:8000/login/', postd)
print urlread.read().decode('utf-8')
urlread = geturlopen('http://127.0.0.1:8000/chafen/', {})
print urlread.read().decode('utf-8')

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python能做什么 python的含義

    python能做什么 python的含義

    在本篇文章里小編給大家整理的是關(guān)于python能做什么 python的含義的相關(guān)知識(shí)點(diǎn),有需要的朋友們學(xué)習(xí)下。
    2019-10-10
  • Python批量生成字幕圖片的方法詳解

    Python批量生成字幕圖片的方法詳解

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)批量生成字幕圖片用于視頻剪輯,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-05-05
  • Python 網(wǎng)絡(luò)編程說明

    Python 網(wǎng)絡(luò)編程說明

    socket 是網(wǎng)絡(luò)連接端點(diǎn)。
    2009-08-08
  • openCV入門學(xué)習(xí)基礎(chǔ)教程第二篇

    openCV入門學(xué)習(xí)基礎(chǔ)教程第二篇

    人臉識(shí)別,物體檢測(cè),OpenCV是基石,下面這篇文章主要給大家介紹了關(guān)于openCV入門學(xué)習(xí)基礎(chǔ)教程的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • python語言開發(fā)垃圾回收機(jī)制原理教程

    python語言開發(fā)垃圾回收機(jī)制原理教程

    這篇文章主要為大家介紹了python語言開發(fā)垃圾回收機(jī)制原理的教程有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • python判斷字符串是否是json格式方法分享

    python判斷字符串是否是json格式方法分享

    這篇文章主要介紹了python判斷字符串是否是json格式方法分享,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • python實(shí)現(xiàn)簡(jiǎn)易聊天室(Linux終端)

    python實(shí)現(xiàn)簡(jiǎn)易聊天室(Linux終端)

    這篇文章主要為大家詳細(xì)介紹了Linux終端上python實(shí)現(xiàn)簡(jiǎn)易聊天室功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • python模塊中pip命令的基本使用

    python模塊中pip命令的基本使用

    這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)python實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的示例解析,在同樣在進(jìn)行python機(jī)器學(xué)習(xí)的同學(xué)可以借鑒參考下,希望能夠有所幫助
    2021-10-10
  • python多進(jìn)程基礎(chǔ)詳解

    python多進(jìn)程基礎(chǔ)詳解

    這篇文章主要介紹了Python多進(jìn)程基礎(chǔ),結(jié)合實(shí)例形式分析了Python多進(jìn)程原理、開啟使用進(jìn)程、進(jìn)程隊(duì)列、進(jìn)程池等相關(guān)概念與使用方法,需要的朋友可以參考下
    2021-10-10
  • Python3之簡(jiǎn)單搭建自帶服務(wù)器的實(shí)例講解

    Python3之簡(jiǎn)單搭建自帶服務(wù)器的實(shí)例講解

    今天小編就為大家分享一篇Python3之簡(jiǎn)單搭建自帶服務(wù)器的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06

最新評(píng)論