![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
爬虫
~喬~
这个作者很懒,什么都没留下…
展开
-
Selenium隐藏浏览器特征
此代码将使用Chrome浏览器,并在启动浏览器时使用选项隐藏Selenium特征、设置用户名和密码方式的代理IP和排除或关闭一些Selenium相关开关。然后,使用execute_cdp_cmd命令来执行Google Chrome DevTools协议中的命令,将navigator.webdriver标志的值修改为false或undefined。原创 2023-09-19 14:27:05 · 2045 阅读 · 0 评论 -
汽车之家口碑页面字体解密
注意: 汽车之家不同页面的字体反爬也不一样, 看清楚能不能适用这里有大佬教程,非常详细:转载:https://blog.csdn.net/blbq105/article/details/85274676# -*- coding: utf-8 -*-import reimport requestsfrom html import unescapefrom fontTools.ttLib import TTFontfrom bs4 import BeautifulSoupclass Ca转载 2022-02-17 18:03:54 · 520 阅读 · 0 评论 -
爬虫-笔记
1. requests hookrequests中的hook机制, 让我们用来请求得到响应之后去做一些自定义的操作比如打印某些信息、修改响应内容等。具体用法见下面的例子:import requests# 钩子函数1def print_url(r, *args, **kwargs): print("raw_url "+r.url)# 钩子函数2def change_url(r, *args, **kwargs): r.url = 'http://change.url' p原创 2022-01-14 11:12:16 · 1141 阅读 · 0 评论 -
python调用js样例
1. 正常jsfunction (acc, code) { return acc + code; };2. js嵌套2.1function foo() { var bar = function (acc, code) { return acc + code; }; return bar;}function doencodeacc(acc, code) { return foo()(acc, code);}2.2fu原创 2022-01-13 17:51:30 · 234 阅读 · 0 评论 -
python调用js
1. 正常调用import execjsprint(execjs.eval("'red yellow blue'.split(' ')"))ctx = execjs.compile(""" function add(x, y) { return x + y; } """)print(ctx.call("add", 1, 2))2. 当js需要调用其他模块或者需要使用windows对象2.1 js修改在js前面加上const jsdom原创 2022-01-13 17:33:30 · 930 阅读 · 0 评论 -
phantomjs动态转换ip
phantomjs动态转换ipfrom selenium import webdriverfrom selenium.webdriver.common.proxy import Proxyfrom selenium.webdriver.common.proxy import ProxyTypefrom selenium.webdriver.common.desired_capabilities import DesiredCapabilitiesfrom ip import get_ipip2转载 2022-01-07 14:29:45 · 172 阅读 · 0 评论 -
pyppeteer和selenium远程操控浏览器
1. 配置环境Chrome浏览器是支持远程调试模式的。这个模式打开的情况下,Puppeteer或者Selenium可以通过websocket连上去,进而控制它。首先我们来启动Chrome的远程调试端口。你需要找到Chrome的安装位置,在Chrome的地址栏输入chrome://version就能找到Chrome的安装路径,如下图所示:有了这个以后,我们需要执行命令启动支持远程调试功能的Chrome。如果你的电脑是Mac,那么命令是:"/Applications/Google Chrome.app转载 2021-12-17 10:18:44 · 3527 阅读 · 6 评论 -
python转js加密(sha1,base64)
1. js var e = (new Date).toGMTString(), t = "AKIDdlutrcn7F4j62Fskwqbiqrki3q3j40r1vjjw", n = 'hmac id="' + t + '", algorithm="hmac-sha1", headers="x-date", signature="', i = de.HmacSHA1("x-date: " + e, "DqRkSBUCyBklYlwA0pCK7TVdNaSgFp4yAk2G6bcI")原创 2021-12-02 13:34:45 · 278 阅读 · 0 评论 -
seleniumwire简单使用
seleniumwire简单使用import timefrom seleniumwire import webdriverfrom io import BytesIOimport gzipoptions = webdriver.ChromeOptions()# 防止出现报错:'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte options.add_argument('lang=zh_CN.UTF-8')原创 2021-12-01 17:52:32 · 4632 阅读 · 1 评论 -
requests.session登录样例+图形验证
requests.session登录案例+图形验证import jsonimport randomimport re, requests, timefrom lxml import etreefrom faker import Factoryfrom PIL import Imageimport pytesseractfrom hashlib import md5class Wkaskci(object): def __init__(self): self.se原创 2021-11-23 15:04:42 · 580 阅读 · 0 评论 -
pyppeteer 使用案例
pyppeteer 使用案例import timefrom asyncio import sleep, get_event_loopimport requestsfrom pyppeteer import launchfrom random import randomfrom re import compile, Sfrom faker import Factoryclass TaoBaoSpider: def __init__(self): self.width原创 2021-11-19 13:50:19 · 216 阅读 · 0 评论 -
状态码412,521,cookie包含__jsl_clearance参数
状态码412,521,cookie包含__jsl_clearance=参数最近做爬虫碰见状态码为412和521的网站,分享一下经验样例网站: http://kjj.hefei.gov.cn/public/column/2971?sub=&catId=6718761&nav=3&action=list&type=4&pageIndex=11.headers参数用postman检测了一下,发现只需要UA,Host,Cookie参数![在这里插入图片描述](htt原创 2021-08-21 15:12:40 · 1853 阅读 · 4 评论 -
Element转HTML和HTML清洗标签
Element转HTML和HTML清洗标签Element转htmlfrom html.parser import HTMLParserfrom lxml import etree, htmlimport requestsresponse = requests.get('https://www.baidu.com')html_element = etree(response) html_text = html.tostring(html_element [0],encoding='utf-8'原创 2021-07-29 10:35:44 · 760 阅读 · 0 评论 -
Xpath和re常用语法
【代码】Xpath和re常用语法。原创 2021-07-28 19:37:54 · 455 阅读 · 0 评论 -
selenium 遇见 display:none元素解决方法
selenium 遇见 display:none元素解决方法有次在爬深圳房地产信息网信息,但是在爬备案号的时候卡到了,备案名爬不下来,只有用鼠标放在信息上面才会出现后来检查了一下发现display:none,这是一个css设置,可以让模块不显示经过一翻查询发现可以用selenium执行js代码来修改css# 一页20个数据for x in range(20): # 根据类来定位元素,必须加序号不然报错 js = "document.getElementsByClassName('原创 2020-05-21 16:25:51 · 2288 阅读 · 0 评论 -
openlaw爬虫超级详细讲解
openlaw爬虫openlaw网站有严格加密,代码可以运行,但是如果想获取太多数据建议根据官网要求来1.openlaw内容页超链接加密打开openlaw网站搜索刑事,打开检查,看见超链接是加密过的猜测一下,觉得里面的两个参数应该就是加密后的id和索引,索引加密猜测应该是常见的url加密,用python的parse.unquote()解密发现刚好是刑事,那接下来就只剩id了 from urllib import parse a = "%E5%88%91%E4%BA%8B"原创 2020-05-20 11:57:18 · 9531 阅读 · 0 评论 -
Xpath使用(全家桶)
Xpath使用(全家桶)先下载lxml,requests,命令是:pip install lxmlpip install requests导入模块:from lxml import etreeimport requests如果发现etree下面有红线,不用管他,只是python解释器没找到etree,但是照样可以使用,然后开始运行,运行不报错,说明安装成功这里就不单个讲解xpa...原创 2020-05-07 15:30:30 · 243 阅读 · 0 评论