在python中如何用 selenium获取指定页面的cookie信息呢?
注意:本实例仅适用于Chrome浏览器,其它浏览器不支持,需要下载对应Chrome浏览器版本的浏览器驱动包。
目录
1、查看浏览器版本
打开Chrome之后,依次点击①②③即可打开以下页面。
红色框选的位置就是所对应的浏览器版本信息(这个很重要,不然下面代码有可能会运行不了)
2、下载对应版本的浏览器驱动
我们发现这里有【92.0.4515.107】和 【92.0/4515.43】两个版本,一般来说,这个两个版本都是使用的,但是我建议下载版本后面所对应日期与当前日期相近的版本最好。
然后根据自己的电脑型号选择合适的版本进行下载即可。
3、获取cookie示例源码
下载的浏览器驱动,解压后,将exe文件放置到python文件的同级目录中,如果放在其它位置,需要额外指定 executable_path绝对路径地址。
#!/usr/bin/python# -*- coding: UTF-8 -*-"""@author: Roc-xb"""# 模拟浏览器登录from selenium import webdriverfrom selenium.webdriver.chrome.options import Options# 根据url获取cookiedef get_cookie(url): # 以下三行为无头模式运行,无头模式不开启浏览器,也就是在程序里面运行的 chrome_options = Options() chrome_options.add_argument("--headless") browser = webdriver.Chrome(executable_path=(r'chromedriver.exe'), options=chrome_options) # 设置访问链接 browser.get(url=url) # 获取cookie cookie_items = browser.get_cookies() cookie_str = "" # 组装cookie字符串 for item_cookie in cookie_items: item_str = item_cookie["name"] + "=" + item_cookie["value"] + "; " cookie_str += item_str # 打印出来看一下 print(cookie_str) return cookie_strif __name__ == '__main__': get_cookie("url地址")
Original: https://blog.51cto.com/YangPC/5483095
Author: CorwinPC
Title: python selenium根据url获取cookie信息
相关阅读1
Title: 关于Python模块安装和卸载的几种方法,第一种人人都用过!
兄弟们常常因为遇到模块不会安装,或者遇到报错就懵了,就很耽误学习进度,今天我们就一次性了解Python几种安装模块的方法~
; 一、命令提示符窗口安装卸载
1、安装
第一种,最常用的,初学者也是基本都是用的这个方法,直接在cmd里面安装。
首先键盘按住win+r
就会弹出来运行框
然后输入cmd
按确定后弹出命令提示符窗口
咱们以爬虫常用模块 requests 为例,requests 是数据请求模块。
在命令提示符窗口输入 pip install requests 即可安装成功。
最后一句就是提示安装成功 2.27.1版本的 requests 模块了。
注:pip 是一个 Python 包管理工具 ,提供了对Python 包的查找、下载、安装、卸载的功能。
Python学习交流群:815624229
2、查看安装
我们来查看安装一下,输入pip list 按回车即可查看,pip list 是查看Python中安装了哪些第三方库。
或者输入pip freeze 按回车查看,pip freeze 是查看安装完毕的所有模块。
还是 list 看起来清爽一点,而且没有必须要求用 freeze 的情况下,咱们就用list就好了。
3、卸载
还是以 requests 为例
在命令提示符窗口输入 pip uninstall requests 按回车
输入Y即同意卸载,输入n即不同意卸载,这里咱们输入Y。
看到 Successfully 就是当前安装的 2.27.1 版本就已经卸载了。
还有两种卸载方法,但是个人觉的用处没那么大,写出来也是凑字数,我就不写了。
二、在pycharm里通过pip安装卸载
这个跟第一种差不多,但是如果你用pycharm在敲代码的话,就比较方便,不用打开那么多窗口。
1、安装
首先打开pycharm,然后看到左下角的 terminal
点一下terminal 弹出来这个界面
剩下的就跟在命令提示符窗口一样的操作了
输入pip install requests 按回车即可安装
2、卸载
输入 pip uninstall requests 按y 即可完成卸载
; 三、pycharm设置里安装卸载
这个相对也简单,但是很多人不用。
1、 安装
首先打开pycharm,点后点击 file (文件) ,点击 settings(设置)
点击 plugins (插件)点击marketplace (插件中心),点击搜索框,输入你要安装的模块
这里还是以 requests 为例
点击 install 即可安装成功
点击 installed 即可查看安装 ,可以看到图下,这里咱们就安装成功了。
2、卸载
卸载更简单,直接点击模块后面的 Restart IDE 即可完成安装。
然后点击 restart 重启 pycharm 即可
兄弟们,今天的分享就这么多,记得点赞转发收藏!
Original: https://www.cnblogs.com/hahaa/p/16013110.html
Author: 轻松学Python
Title: 关于Python模块安装和卸载的几种方法,第一种人人都用过!
相关阅读2
Title: 用python爬了上千万条招聘信息后,最终分析出python要学这些才能就业...
话说年末了,有工作的要考虑明年跳槽,没工作的要考虑明年找工作,那么都想好怎么搞了吗?
不知道怎么了解?没事,来,我们用python一键查看并分析!
; 一、准备前戏
1、使用的软件
python 3.8
pycharm 2021专业版 激活码
2、使用的内置模块
pprint >>> # 格式化输入模块
csv >>> # 保存csv文件
re >>> # re 正则表达式
time >>> # 时间模块
3、要安装的第三方模块
requests >>> # 数据请求模块
win + R 输入cmd 输入安装命令 pip install 模块名 ,如果出现爆红, 可能是因为网络连接超时,切换国内镜像源即可。
二、思路流程
爬虫就是模拟浏览器,对于服务器发送请求,得到它返回响应的数据。
数据来源分析
首先确定目标,分析数据内容,可以从什么地方获取。
数据是通过哪个url地址发送什么请求方式,携带了那些请求头,然后得到数据(通过开发者工具进行抓包分析)
我们分析数据,是分析服务器返回数据,而不是元素面板,elements 是元素面板,前端代码渲染之后的内容。
代码实现步骤
- 发送请求,对于我们刚刚分析的到url(数据包)地址发送请求,post请求,请求参数, header请求头;
- 获取数据,获取响应体的数据内容,服务器返回的数据;
- 解析数据,提取我们想要的内容,根据返回的数据,选择对应最适合的解析方式去提取数据;
- 保存数据,保存本地数据库/文本/表格数据;
- 多页爬取;
# 我还给大家准备了这些资料,直接在群里就可以免费领取了。
# 一群:872937351 (群满了的话加二群)
# 二群:924040232
# python学习路线汇总
# 精品Python学习书籍100本
# Python入门视频合集
# Python实战案例
# Python面试题
# Python相关软件工具/pycharm永久激活
三、代码部分
兄弟们,最最最喜欢的环节到了,上代码。
import requests # 数据请求模块
import pprint # 格式化输入模块
import csv # 保存csv文件
import time # 时间模块
# 打开文件 等会进行保存 mode 是保存方式 a 追加写入
f = open('拉勾.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
'标题',
'公司名字',
'城市',
'薪资',
'经验',
'学历',
'详情页',
])
csv_writer.writeheader() # 写入表头
for page in range(1, 11):
# 1. 发送请求 字符串格式化输出 {}占位符
print(f'===================正在爬取第{page}页的数据内容===================')
time.sleep(2) # 延时2秒钟
url = 'https://www.lagou.com/jobs/v2/positionAjax.json' # 确定请求的url地址
# headers 请求头 爬虫就是模拟浏览器 对于服务器发送请求, 得到他返回响应数据
# headers 作用 伪装python代码的 把python代码伪装成浏览器 去发送请求 简单反爬一种手段
# user-agent 用户代理 浏览器的身份标识
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36'
}
# data 请求参数, post请求 需要传递一个from data表单数据
# pycharm使用的小技巧一: 快速批量替换 选中 ctrl + R 输入正则表达式匹配规则
# pycharm使用的小技巧二: 翻译插件 可以去安装
data = {
'first': 'true',
'needAddtionalResult': 'false',
'city': '全国',
'px': 'new',
'pn': page,
'fromSearch': 'true',
'kd': 'python',
}
# 通过requests这个模块里面post请求方法 对于url地址发送请求, 并且给传递一个data请求参数, headers 请求头, 最后response变量接收
response = requests.post(url=url, data=data, headers=headers)
# 放回的结果 response 对象 200 状态码 表示请求成功
# 2. 获取数据 response.json() 获取json字典数据 response.text 获取文本数据(字符串数据) response.content 二进制数据
# print(response.text)
# pprint.pprint(response.json())
# 3. 解析数据 字典数据类型, 解析数据 提取内容 可以根据键值对取值 根据冒号左边的内容, 提取冒号右边的内容
# 根据冒号左边的内容, 提取冒号右边的内容
result = response.json()['content']['positionResult']['result']
# pprint.pprint(result)
for index in result: # for循环 遍历 提取列表里面每一个元素
title = index['positionName'] # 标题
company_name = index['companyFullName'] # 公司名字
city = index['city'] # 城市
money = index['salary'] # 薪资
workYear = index['workYear'] # 经验
edu = index['education'] # 学历
href = f'https://www.lagou.com/wn/jobs/{index["positionId"]}.html'
# json.loads() 字符串数据转字典
dit = {
'标题': title,
'公司名字': company_name,
'城市': city,
'薪资': money,
'经验': workYear,
'学历': edu,
'详情页': href,
}
csv_writer.writerow(dit)
print(dit)
兄弟们觉得还行的话,记得三连哈~
Original: https://www.cnblogs.com/hahaa/p/15745641.html
Author: 轻松学Python
Title: 用python爬了上千万条招聘信息后,最终分析出python要学这些才能就业...
相关阅读3
Title: 70 行 Python 代码写春联,行书隶书楷书随你选
前言
相信现在有很多小伙伴都不会写毛笔字了,今天想用python来写一幅春联,不知道有没有人喜欢。该文用的是田英章老师的楷
书,我在网上总共找到了1600个汉字,因此,春联用字被限制在这1600个汉字的小字库中。我个人精力有限,同时受知识产权保
护的限制,不可能制作完整的毛笔字库。那么,能否借用现有的矢量字库,满足朋友们的要求呢?经过一番尝试,发现操作系统
自带的某些矢量字库,是可以作为毛笔字库使用的。以下是简单的演示代码,仅供学习编程技术之用,绝无侵犯字体权利人之权
力的故意,特此声明。
选择矢量字库
虽然有很多方法可以帮你呈现出系统支持的所有字体文件,我建议最直接的方式是去查看操作系统的字体目录。以Windows为例,我直接在C:\Windows\Fonts这个路径下找到了"华文隶书"这个字库文件,查看属性可知,该文件名为STLITI.TTF。找到了喜欢的字库文件,只需要将其全路径文件名替换到代码中的FONT_FILE常量即可,不需要做其他操作。
; 选择一款喜欢的春联背景图案
还是以"龙凤呈祥"这个图案为例。如果换用其他的图案,请确保图案是.png格式(背景透明),且是方形的。同字体文件一样,我
们需要将这个背景图案的全路径文件名替换到代码中的BG_FILE常量即可。
完整代码
全部代码总共70余行,使用方法请看注释。
python学习交流Q群:906715085####
-*- coding: utf-8 -*-
import os
import freetype
import numpy as np
from PIL import Image
FONT_FILE = r'C:\Windows\Fonts\STLITI.TTF'
BG_FILE = r'D:\temp\bg.png'
def text2image(word, font_file, size=128, color=(0,0,0)):
"""使用指定字库将单个汉字转为图像
word - 单个汉字字符串
font_file - 矢量字库文件名
size - 字号,默认128
color - 颜色,默认黑色
"""
face = freetype.Face(font_file)
face.set_char_size(size*size)
face.load_char(word)
btm_obj = face.glyph.bitmap
w, h = btm_obj.width, btm_obj.rows
pixels = np.array(btm_obj.buffer, dtype=np.uint8).reshape(h, w)
dx = int(face.glyph.metrics.horiBearingX/64)
if dx > 0:
patch = np.zeros((pixels.shape[0], dx), dtype=np.uint8)
pixels = np.hstack((patch, pixels))
r = np.ones(pixels.shape) * color[0] * 255
g = np.ones(pixels.shape) * color[1] * 255
b = np.ones(pixels.shape) * color[2] * 255
im = np.dstack((r, g, b, pixels)).astype(np.uint8)
return Image.fromarray(im)
def write_couplets(text, horv='V', quality='L', out_file=None, bg=BG_FILE):
"""写春联
text
- 春联字符串 bg
- - 背景图片路径 horv
- - H-横排,V-竖排 quality
- - 单字分辨率,H-640像素,L-320像素
- out_file - 输出文件名
- """
- size, tsize = (320, 128) if quality == 'L' else (640, 180)
- ow, oh = (size, size*len(text)) if horv == 'V' else (size*len(text), size)
- im_out = Image.new('RGBA', (ow, oh), '#f0f0f0')
- im_bg = Image.open(BG_FILE) if size < 640:
- im_bg = im_bg.resize((size, size))
- for i, w in enumerate(text):
- im_w = text2image(w, FONT_FILE, size=tsize, color=(0,0,0))
- w, h = im_w.size
- dw, dh = (size - w)//2, (size - h)//2
- if horv == 'V':
- im_out.paste(im_bg, (0, i*size))
- im_out.paste(im_w, (dw, i*size+dh), mask=im_w)
- else:
- im_out.paste(im_bg, (i*size, 0))
- im_out.paste(im_w, (i*size+dw, dh), mask=im_w)
- im_out.save('%s.png'%text) os.startfile('%s.png'%text)
if __name__ == '__main__':
write_couplets('普天同庆', horv='V', quality='H')
write_couplets('欢度春节', horv='V', quality='H')
write_couplets('国泰民安', horv='H', quality='H')
样例
最后,祝大家虎年大吉,虎虎生威,身体健康,事事顺心。
Original: https://www.cnblogs.com/1234567FENG/p/16381788.html
Author: 蚂蚁爱Python
Title: 70 行 Python 代码写春联,行书隶书楷书随你选