世纪佳缘 登录
登录
# _*_ coding:utf-8 _*_
import urllib2
import urllib
import cookielib
import re
# 通过cookiejar()类构建一个cookieJar对象,用来保存cookie的值
cookie = cookielib.CookieJar()
# 通过HTTPCookieProcessor()处理器类构建一个处理器对象,用来处理cookie
# 参数就是构建的CookieJar()对象
cookie_handler = urllib2.HTTPCookieProcessor(cookie)
# 构建一个自定义的opener
opener = urllib2.build_opener(cookie_handler)
# 通过自定义opener的addheaders的参数,可以添加HTTP报头参数
opener.addheaders = [('User-Agent',
'Mozilla/5.0 (windows NT 6.1; Win64; x64) APPleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36')]
# 世纪佳缘网登录接口
url = 'http://login.jiayuan.com/?pre_url=%2Fusercp&channel=1&position=21&refrer=http://www.jiayuan.com&host=0'
def login_data(login_page):
# 填写自己的用户名和密码
login_data = {u'name': u'158*********',
u'password': u'12*********',
u'remem_pass': u'on'}
pattern = re.compile(r'<input type="hidden" name="(\w+)" value="(\w+)"\s*/>', re.U)
login_info = pattern.findall(login_page)
for item in login_info:
key, val = item
login_data[key] = val
return login_data
data = login_data(url)
# 通过urlencode()编码转换
data = urllib.urlencode(data)
# 第一次是POST请求,发送登录需要的参数,获取cookie
request = urllib2.Request(url, data=data)
response = opener.open(request)
print response.read()
登录 访问界面
# _*_ coding:utf-8 _*_
import requests
import re
# 1. 创建session对象,可以保存Cookie值
ssion = requests.session()
# 2. 处理 headers
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36'}
url = 'http://login.jiayuan.com/?pre_url=%2Fusercp&channel=1&position=21&refrer=http://www.jiayuan.com&host=0'
# 3. 需要登录的用户名和密码
def login_data(login_page):
# 填写自己的用户名和密码
login_data = {u'name': u'15815518791',
u'password': u'123456',
u'remem_pass': u'on'}
pattern = re.compile(r'<input type="hidden" name="(\w+)" value="(\w+)"\s*/>', re.U)
login_info = pattern.findall(login_page)
for item in login_info:
key, val = item
login_data[key] = val
return login_data
data = login_data(url)
# 4. 发送附带用户名和密码的请求,并获取登录后的Cookie值,保存在ssion里
ssion.post(url, data=data)
# 5. ssion包含用户登录后的Cookie值,可以直接访问那些登录后才可以访问的页面
response = ssion.get("http://www.jiayuan.com/202562075?fxly=search_v2_index")
# 6. 打印响应内容
print response.text
相关阅读
最近迷上一拳超人,在xx动漫上看漫画时总是遇到各种网络问题,索性之间爬下来源码如下import requests, re from bs4 import Beautifu
爬取网页的图片,选择需要的图片类别 爬百度图片 #!/usr/bin/env python # -*- coding:utf-8 -*- import os import re import ur
使用同一个IP去爬取同一个网站上的网页,久了之后会被该网站服务器屏蔽。这个时候我们就可以使用代理服务器。 (使用代理服务器去爬
爬虫的爬取过程为,从服务器获得网页数据,通过python的相关解析库进行数据的提取分析。过程如下,其中对遇到的问题进行汇总记录解答!
0、IT桔子和36Kr在专栏文章中(http://zhuanlan.zhihu.com/p/20714713),抓取IT橘子和36Kr的各公司的投融资数据,试图分析中国各家基金