必威体育Betway必威体育官网
当前位置:首页 > IT技术

爬虫 登录世纪佳缘网站 代码详解

时间:2019-07-13 13:41:06来源:IT技术作者:seo实验室小编阅读:82次「手机版」
 

世纪佳缘 登录

登录

# _*_ 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

相关阅读

python3爬虫爬取风之动漫漫画

最近迷上一拳超人,在xx动漫上看漫画时总是遇到各种网络问题,索性之间爬下来源码如下import requests, re from bs4 import Beautifu

爬虫-百度、搜狗、360图片

爬取网页的图片,选择需要的图片类别 爬百度图片 #!/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的各公司的投融资数据,试图分析中国各家基金

分享到:

栏目导航

推荐阅读

热门阅读