爬虫基本原理,post、get请求

耗尽温柔 提交于 2019-12-05 15:17:08

一、爬虫介绍:

  -本质,

    -就是想网站发送http请求,拿回一些页面/json格式数据(request)

    -处理数据,解析出有用的东西(re,bs4)

    -存储(mysql,文件,cvs,redis,MongoDB,es)

    -分析

  -cookie池和代理池

    -爬视频

    -正向代理和反向代理

      (正向代理-代理自己,反向代理-代理服务器)

爬虫运用模块

  -requests模块

    -爬视频

  -beautiflsoup

    -requests+bs4爬新闻

  -selenium

    -购物网站

  -request-html

    -模拟登陆知乎(破解加密登陆)

  -破解验证码

  -mogodb

  -高性能相关

  -scrapy框架(爬虫界的django)

  -分布式爬虫  scrapy-redis

 

1、requests模块

  -基于get和post请求

import requests

# get 请求
res = requests.get('https://www.baidu.com/s',
                   # get请求携带参数
                   params={'wd': '美女'},
                   # 请求头的信息
                   headers={
                       'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'}
                   )

res.encoding = 'utf-8'
print(res.text)
with open('a.html','w') as f:
    f.write(res.text)
get
import requests

# post 请求
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
}
res = requests.post('http://www.aa7a.cn/user.php',
                    headers=headers,
                    data={
                        'username': '616564099@qq.com',
                        'password': 'lqz123',
                        'captcha': 'pnz4',
                        'remember': 1,
                        'ref': 'http://www.aa7a.cn/',
                        'act': 'act_login'
                    })

# 如果登陆成功,cookie会存在于res对象中
cookie = res.cookies.get_dict()

res = requests.get('http://www.aa7a.cn/',headers=headers,
                 cookies=cookie,)

if '616564099@qq.com' in res.text:
    print("登录成功")
else:
    print("没有登录")
post

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!