python爬取出现滑动验证

python 爬虫遇到滑动验证码,要如何处理才能实现目标网址内容爬取。
目标网站:http://jobs.zhaopin.com/CC121069040J40277142813.htm

此网址不需要账号密码,只需要滑动验证后进入。

问题1:能通过cookies来绕开验证码爬取?,若行,要怎么写?

问题2:问题1不可行的情况下,只能用 Selenium 解决? 若是要怎么写py代码实现?

我点开不需要要滑块,是不是你访问次数太多了,所以对你的IP进行风控了。
基于此,有这些办法:

  1. 使用IP代理,个人不做IP代理服务商的推荐,自己找吧。什么阿布云、快代理都行。IP代理服务商的网站上一般都有IP代理设置的教程
  2. Selenium,这个网上教程多的一笔,找两个抄一下就行了,但是速度慢,不适合大规模
  3. 通过request请求来模拟滑块,难度较高,可能还涉及js逆向。
    至于你说的cookie,不一定可行,可以尝试,登录账号之后可能风控会好一些。但也可能封账号。
    下面是用Selenium 获取登录cookie的代码(其实可以手动从浏览器上抄)
from selenium import webdriver # 从selenium导入webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.options import Options
import json
import time

chrome_options = Options()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get(“这里填登录页面网址”)
driver.delete_all_cookies()

# 这里需要操作浏览器手动登录,登录完成后执行下面的代码

cookies = driver.get_cookies()
with open("D:zhilian_cookies.json", "w",encoding="utf-8") as fp:
    json.dump(cookies, fp)
#这样就就把cookie存到了这里,D:zhilian_cookies.json
# 在爬虫程序里读取这个文件,并且加载为一个字典
with open("D:zhilian_cookies.json", "r",encoding="utf-8") as fp:
    zhilian_cookies =  json.loads(fp.read())
# 如果你用的是scrapy,直接在request里加就可以了,比如 yield scrapy.Request.get(url,cookies=zhilian_cookies)

个人推荐优先级:
IP代理>cookies(不一定可行)>通过request请求来模拟滑块 >Selenium(不适合大规模抓取)

直接上IP代理。遇到验证码就换IP