python获取数据的方法有哪些

您所在的位置:网站首页 获取数据的常用方法 python获取数据的方法有哪些

python获取数据的方法有哪些

2024-07-16 19:56:31| 来源: 网络整理| 查看: 265

常见的分类

分类方式一

1.不用登录就能爬取的网站,

2.需要先登录的网站

这一类网站又可以分为:

01.只需输入帐号密码、

02.除了帐号密码还需输入或点击验证码等类型。

01.只需输入帐号密码、

只需要输入账号密码的情况

介绍模拟登录常用的 3 种方法。

001.POST 请求方法:需要在后台获取登录的 URL并填写请求体参数,然后 POST 请求登录,相对麻烦;

002.添加 Cookies 方法:先登录将获取到的 Cookies 加入 Headers 中,最后用 GET 方法请求登录,这种最为方便;

003.Selenium 模拟登录:代替手工操作,自动完成账号和密码的输入,简单但速度比较慢

分类方式二

静态页面: 静态页面的时候直接查看response一般就是网页的全部代码

动态页面其实是相对于静态页面而言的 客户端语言改变页面的 HTML 和 CSS 元素

通常的手法都是监听、抓包、分析js文件

爬虫处理动态页面的两种方式

01.-- 逆向工程 模拟发包。 稳定性和效率

Ajax请求的具体链接,直接得到Ajax请求得到的数据

AJAX 使用的 XMLHttpRequest 的对象与服务器通信

JavaScript 中调用 XMLHttpRequest 对象。 HTTP 请求由 XMLHttpRequest 对象发送到服务器。

XMLHttpRequest 对象用于和服务器交换数据

02.--用现成的包操作浏览器 --selenium模拟浏览器

ghost.py 用 webkit 我们需要有pyqt或者是PySide

一般就是用 Selenium + PhantomJS

Selenium

测试代码输入操作给 webdriver

webdriver 再去控制浏览器,最终达到的效果就是代码实现对浏览器的操作

下载浏览器驱动:

例如火狐的 FirefoxDriver geckodriver

谷歌的 ChromeDriver

IE的驱动 IEdriver IEDriverServer

三大浏览器驱动 driver

webdriver.Chrome()

示例代码

from selenium import webdriver

browser = webdriver.Chrome()

browser.get('http://www.baidu.com/')

启动火狐浏览器

from selenium import webdriver

browser = webdriver.Firefox()

browser.get('http://www.baidu.com/')

启动IE浏览器 http://selenium-release.storage.googleapis.com/index.html

# #设置环境变量

# driver=webdriver.Ie(executable_path="./../lib/IEDriverServer.exe")

# IEDriverServer 的版本号和Selenium的版本号一定要一致

from selenium import webdriver

browser = webdriver.Ie()

browser.get('http://www.baidu.com/')

具体操作:

01.找到 POST 请求的 URL

02.构造参数构造 利用 Requests.post 方法请求登录网站

import requests

headers = {'User-Agent': 'User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)'}

data = {'identity':'@@.com', 'password':'test2020'}

url ='https://www.'

session = requests.Session()

session.post(url,headers = headers,data = data)

response = session.get('http://rad',headers = headers)

print(response.status_code)

print(response.text)

import requests

headers = {

'User-Agent': 'User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)',

'Cookie': '你的cookie',}

url = 'https://www.ion='

session = requests.Session()

response = session.get('http://rent', headers=headers)

print(response.status_code)

网页相关内容

Referer:浏览器通过此来判断你从哪一个网页跳转过来

referer: https://www.cnblogs.com/

User Agent 中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。它是一个特殊字符串头,

是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识

浏览器识别

User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0);

Cookie 指的是当你浏览某网站时,网站存储在你电脑上的一个小文本文件,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。

它记录了你的用户ID,密码、浏览过的网页、停留的时间等信息,用于用户身份的辨别

HTTP协议是无状态

Cookie 正是这样的一段随HTTP请求一起被传递的额外数据,用于维护浏览器和服务器的会话

Cookie是基于浏览器的 Http Cookie Cookie的时间由服务器的设置决定

第一方Cookie和第三方Cookie

常用的包

lxml Python XML 库

Requests: 让 HTTP 服务人类

Pandas(python强大的数据处理库)

from selenium import webdriver

参考

python+Selenium用ie打不开浏览器解决办法 https://blog.csdn.net/qq_31857075/article/details/100748456

详解爬虫模拟登陆的三种方法 https://blog.csdn.net/zhusongziye/article/details/91353222



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭