Python 模拟淘宝登录的两种方法

方法一、urllib的post登录

import urllib
import urllib2
import cookielib   

def taobao(username,password):
    cj = cookielib.CookieJar()
    print cj
    post_data = urllib.urlencode(
        {
         ‘TPL_password‘:password,
         ‘TPL_username‘:username,
         })  

    path = ‘https://login.taobao.com/member/login.jhtml‘
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))    

    opener.addheaders = [(‘User-agent‘, ‘Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13‘)]     

    urllib2.install_opener(opener)
    req = urllib2.Request(path,post_data)    

    #try login
    conn = urllib2.urlopen(req)
    html = conn.read().decode(‘gbk‘,‘ignore‘)
    print cj
    print html  

taobao(‘username‘,‘password‘)
print ‘OK‘    

方法二:通过selenium模拟浏览器登录

from selenium import webdriver
driver = webdriver.Chrome()
#driver = webdriver.Firefox()  

driver.get(‘https://login.taobao.com/member/login.jhtml‘)  

driver.find_element_by_xpath(‘//*[@id="J_QRCodeLogin"]/div[5]/a[1]‘).click()
driver.find_element_by_id("TPL_username_1").clear()
driver.find_element_by_id("TPL_password_1").clear()
driver.find_element_by_id("TPL_username_1").send_keys(‘xxx‘)
driver.find_element_by_id("TPL_password_1").send_keys(‘xxx‘)  

driver.find_element_by_id("J_SubmitStatic").click()  

#driver.get_cookies()取得cookie
cookie = "; ".join([item["name"] + "=" + item["value"] +"\n" for item in driver.get_cookies()])
print cookie  

参考http://blog.csdn.net/u010352695/article/details/40660133

时间: 2024-08-06 10:01:47

Python 模拟淘宝登录的两种方法的相关文章

Python 中格式化字符串 % 和 format 两种方法之间的区别

Python2.6引入了 format 格式化字符串的方法,现在格式化字符串有两种方法,就是 % 和 format ,具体这两种方法有什么区别呢?请看以下解析. # 定义一个坐标值 c = (250, 250) # 使用%来格式化 s1 = "敌人坐标:%s" % c 上面的代码很明显会抛出一个如下的TypeError: TypeError: not all arguments converted during string formatting 像这类格式化的需求我们需要写成下面丑陋

纯HTML/CSS/JS实现淘宝、京东两种轮播图

最近刚好重新看了一下前端的内容,在做网页banner的时候实现轮播图上遇到了问题. 本着不想用轮子的心态,在网上查了半天很多实现有点问题(逼死强迫症 于是对着淘宝和京东首页两种不同的轮播图做了一个实现. 循环式(淘宝首页) 大概思路: 为了实现无限循环,在第一张图前放一个最后一张图,最后一张图后面放一个第一张图 <li><img src="image3.jpg" alt=""></li> <li><img src

某某登录的两种方法

方法一:微博登录 1 from selenium import webdriver 2 from selenium.webdriver.common.by import By 3 from selenium.webdriver.support.ui import WebDriverWait 4 from selenium.webdriver.support import expected_conditions as EC 5 6 7 # 定义一个taobao类 8 class taobao_in

模拟淘宝登录和购物车功能:使用cookie记录登录名,下次登录时能够记得上次的登录名,使用cookie模拟购物车功能,使用session记住登录信息并验证是否登录,防止利用url打开网站,并实现退出登录功能

<%@page import="java.net.URLDecoder"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" &

python 读取并显示图片的两种方法

在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片.本人偏爱 matpoltlib,因为它的语法更像 matlab. 一.matplotlib 1. 显示图片 import matplotlib.pyplot as plt # plt 用于显示图片 import matplotlib.image as mpimg # mpimg 用于读取图片 import numpy as np lena = mpimg.imread('lena.png')

网站接入QQ登录的两种方法

1 第一种使用系统自带按钮登录,但是这样会弹出新窗口,不喜欢 2 //调用QC.Login方法,指定btnId参数将按钮绑定在容器节点中 3 QC.Login({ 4 //btnId:插入按钮的节点id,必选 5 btnId:"qqLoginBtn", 6 //用户需要确认的scope授权项,可选,默认all 7 scope:"all", 8 //按钮尺寸,可用值[A_XL| A_L| A_M| A_S| B_M| B_S| C_S],可选,默认B_S 9 size

python:列表的去重:两种方法的问题是:结果是没有保持原来的顺序。

列表的去重 1.使用set的特型,python的set和其他语言类似, 是一个无序不重复元素集 orgList = [1,0,3,7,7,5] #list()方法是把字符串str或元组转成数组 formatList = list(set(orgList)) print (formatList) 2.使用keys()方法 orgList = [1,0,3,7,7,5] #list()方法是把字符串str或元组转成数组 formatList = list({}.fromkeys(orgList).k

【Python】输出中文字符串的两种方法

print u"中文" ? # -*- coding: utf-8 -*- ? 这句话放在最上面,记得是最上面,顶格写 这样,print后,字符串前就不用加u了

模拟支付宝、淘宝登录1

1.进入支付宝首页 GET https://auth.alipay.com/login/index.htm HTTP/1.1Accept: */*Accept-Language: zh-CNAccept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/8.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .N