KHTML

《Nginx

泄露秘密 提交于 2020-05-07 19:05:10
一:log_format    - 概述     - log_format 用于管理 Nginx 的详细信息,日志管理等信息,很多都是基于这个来实现。    - 可配置参数 $remote_addr           客户端地址 $remote_user         客户端用户名称 $time_local         访问时间和时区 $request           请求的URI和HTTP协议$http_host请求地址,即浏览器中你输入的地址(IP或域名) $statusHTTP         请求状态 $upstream_statusupstream   状态 $body_bytes_sent       发送给客户端文件内容大小 $http_refererurl       跳转来源 $http_user_agent         用户终端浏览器等信息 $ssl_protocolSSL        协议版本 $ssl_cipher           交换数据中的算法 $upstream_addr          后台upstream的地址,即真正提供服务的主机地址 $request_time          整个请求的总时间 $upstream_response_time    请求过程中,upstream响应时间 二:核心模块内置变量    -

04,Python网络爬虫之requests模块(1)

时光怂恿深爱的人放手 提交于 2020-05-07 18:30:47
引入 Requests 唯一的一个 非转基因 的 Python HTTP 库,人类可以安全享用。 警告 :非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症、冗余代码症、重新发明轮子症、啃文档症、抑郁、头疼、甚至死亡。 今日概要 基于requests的get请求 基于requests模块的post请求 基于requests模块ajax的get请求 基于requests模块ajax的post请求 综合项目练习:爬取国家药品监督管理总局中基于中华人民共和国化妆品生产许可证相关数据 知识点回顾 常见的请求头 常见的相应头 https协议的加密方式 今日详情 - 基于如下5点展开requests模块的学习 什么是requests模块 requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。 为什么要使用requests模块 因为在使用urllib模块的时候,会有诸多不便之处,总结如下: 手动处理url编码 手动处理post请求参数 处理cookie和代理操作繁琐 ...... 使用requests模块: 自动处理url编码 自动处理post请求参数 简化cookie和代理操作 ...... 如何使用requests模块 安装: pip install requests 使用流程

爬虫 --- 01 anaconda安装,http与https, 爬虫初始

给你一囗甜甜゛ 提交于 2020-05-07 18:25:56
一.Anaxonda的安装   1. 双击 Anaconda3-5.0.0-Windows-x86_64.exe 文件   2.下一步   3. ① 打开 cmd 窗口,录入 jupyter notebook 指令, 如果没有显示找不到命令且没有报错即可表示安装成功! ②在开始菜单中显示 二.HTTP 与HTTPS   1.HTTP协议   ①概念 1 .官方概念:     HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写, 是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。   2.白话概念:     HTTP协议就是服务器(Server)和客户端(Client)之间进行数据交互(相互传输数据)的一种形式。   ②HTTP工作原理   ③注意事项     - HTTP允许传输任意类型的数据对象。正在传输的类型由Content- Type加以标记。      - HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求, 并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。      - HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容, 任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-

Python网络爬虫之cookie处理、验证码识别、代理ip、基于线程池的数据爬去

风格不统一 提交于 2020-05-07 17:37:29
本文概要 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 引入 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: # !/usr/bin/env python # -*- coding:utf-8 -*- import requests if __name__ == " __main__ " : # 张三人人网个人信息页面的url url = ' http://www.renren.com/289676607/profile ' # 伪装UA headers= { ' User-Agent ' : ' Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36 ' , } # 发送请求,获取响应对象 response = requests.get(url=url,headers= headers) # 将响应内容写入文件 with open( ' ./renren.html ' , ' w ' ,encoding= ' utf-8 ' )

python网络爬虫——requests高阶部分:模拟登录与验证码处理

家住魔仙堡 提交于 2020-05-07 17:36:54
云打码平台【处理各类验证码的平台】 注册:普通用户和开发者用户 登录: 登录普通用户(查看余额) 登录开发者用户: 创建一个软件:我的软件->创建软件 下载示例代码:开发者中心->下载最新的DLL->pythonHttp示例代码下载 一般点击登录按钮的请求都是post请求 cookie的作用,服务器使用cookie记录客户端的状态:经典:免密登录 服务端创建,客户端存储 有有效时长,动态变化 引入 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: import requests if __name__ == " __main__ " : # 张三人人网个人信息页面的url url = ' http://www.renren.com/289676607/profile ' # 伪装UA headers= { ' User-Agent ' : ' Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36 ' , } # 发送请求,获取响应对象 response = requests

Python爬虫之requests模块(2)

主宰稳场 提交于 2020-05-07 17:36:33
一.今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 二.回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 三.引入 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: #!/usr/bin/env python # -*- coding:utf-8 -*- import requests if __name__ == "__main__": #张三人人网个人信息页面的url url = 'http://www.renren.com/289676607/profile' #伪装UA headers={ 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36', } #发送请求,获取响应对象 response = requests.get(url=url,headers=headers) #将响应内容写入文件 with open('./renren.html','w

微信公众号数据抓取

烈酒焚心 提交于 2020-05-07 10:50:29
1.抓取某个公众号所有的文件信息 Charles +电脑版微信+pycharm+python 2. 分析 经过分析:每个公众号文章列表页连接都是 https://mp.weixin.qq.com/mp/profile_ext 开头 ,抓取时每个公众号的只有几个参照不一样 抓取: 3. 代码 import requests import json import time def parse( __biz , uin, key, pass_ticket, appmsg_token= "" , offset= " 0 " ): """ 文章信息获取 """ url = ' https://mp.weixin.qq.com/mp/profile_ext ' headers = { " User-Agent " : " Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 MicroMessenger/6.5.2.501 NetType/WIFI WindowsWechat QBCore/3.43.901.400 QQBrowser/9.0.2524.400 " , } params = { " action " : "

微信公众号数据抓取

旧街凉风 提交于 2020-05-07 08:44:49
1.抓取某个公众号所有的文件信息 Charles +电脑版微信+pycharm+python 2. 分析 经过分析:每个公众号文章列表页连接都是 https://mp.weixin.qq.com/mp/profile_ext 开头 ,抓取时每个公众号的只有几个参照不一样 抓取: 3. 代码 import requests import json import time def parse( __biz , uin, key, pass_ticket, appmsg_token= "" , offset= " 0 " ): """ 文章信息获取 """ url = ' https://mp.weixin.qq.com/mp/profile_ext ' headers = { " User-Agent " : " Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 MicroMessenger/6.5.2.501 NetType/WIFI WindowsWechat QBCore/3.43.901.400 QQBrowser/9.0.2524.400 " , } params = { " action " : "

Python+pyecharts:全国猪价地图的实现

余生颓废 提交于 2020-05-07 01:38:48
继续来说猪的事情,这次我们实现爬取全国各省份生猪价格,并用pyecharts画出全国生猪价格分布图。 爬取的网站为: 具体爬虫代码为: import pandas as pd import requests import json url = ' https://zhujia.zhuwang.cc/api/getMapJson?id=-1 ' headers = { ' User-Agent ' : ' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36 ' } response = requests.get(url,headers= headers) json_text = response.json() data =json_text[ ' features ' ] lis = [] for i in range(0,32 ): # print(data[i]['properties']) try : lis.append([data[i][ ' properties ' ][ ' name ' ],data[i][ ' properties ' ][ ' pigprice ' ]]) except

爬虫入门基础-HTTP协议过程

|▌冷眼眸甩不掉的悲伤 提交于 2020-05-06 20:48:03
当我们在浏览器中输入URL后,会发生什么?比如 https:// www.baidu.com 我们可以用 curl -v https://www.baidu.com 来研究这个过程,会发现总共有 4个子过程。 1、查找域名对应的IP地址 * Rebuilt URL to: https://www.baidu.com/* Trying 14.215.177.38... 我们可以通过 nslookup www.baidu.com 模拟这个过程 , dns服务器返回两个IP地址,curl会随机选用其中一个IP服务器进行访问。 2、向IP对应的服务器发送SSL协商请求,进行SSL协商 * Connected to www.baidu.com (14.215.177.38) port 443 (#0) 下图是通过 Wireshark 抓包获取的协商过程。 3、SSL协商完成后,向IP对应服务器发起 GET 请求 > GET / HTTP/1.1 > Host: www.baidu.com > User-Agent: curl/7.54.0 网站会检查是不是真的浏览器访问。需加上 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.1276.73