当前位置: 首页 > news >正文

jsp网站开发职位要求广州网站建设 全包

jsp网站开发职位要求,广州网站建设 全包,保定网站推广哪家好,个人网页制作软件1 打码平台 1.1 案例 2 打码平台自动登录打码平台 3 selenium爬取京东商品信息 4 scrapy介绍安装 5 scrapy目录结构 1 打码平台 # 1 登录某些网站#xff0c;会有验证码---》想自动破解-数字字母#xff1a;python模块#xff1a;ddddocr-计算题#xff0c;成语题#xf…1 打码平台 1.1 案例 2 打码平台自动登录打码平台 3 selenium爬取京东商品信息 4 scrapy介绍安装 5 scrapy目录结构 1 打码平台 # 1 登录某些网站会有验证码---》想自动破解-数字字母python模块ddddocr-计算题成语题滑块...第三方打码平台人工操作# 2 打码平台-云打码超级鹰# 3 咱们破解网站登录的思路-使用selenium----》打开网站----》不能解析出验证码地址---》使用截图1.1 超级鹰案例 import requests from hashlib import md5class ChaojiyingClient(object):def __init__(self, username, password, soft_id):self.username usernamepassword password.encode(utf8)self.password md5(password).hexdigest()self.soft_id soft_idself.base_params {user: self.username,pass2: self.password,softid: self.soft_id,}self.headers {Connection: Keep-Alive,User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0),}def PostPic(self, im, codetype):im: 图片字节codetype: 题目类型 参考 http://www.chaojiying.com/price.htmlparams {codetype: codetype,}params.update(self.base_params)files {userfile: (ccc.jpg, im)}r requests.post(http://upload.chaojiying.net/Upload/Processing.php, dataparams, filesfiles,headersself.headers)return r.json()def PostPic_base64(self, base64_str, codetype):im: 图片字节codetype: 题目类型 参考 http://www.chaojiying.com/price.htmlparams {codetype: codetype,file_base64: base64_str}params.update(self.base_params)r requests.post(http://upload.chaojiying.net/Upload/Processing.php, dataparams, headersself.headers)return r.json()def ReportError(self, im_id):im_id:报错题目的图片IDparams {id: im_id,}params.update(self.base_params)r requests.post(http://upload.chaojiying.net/Upload/ReportError.php, dataparams, headersself.headers)return r.json()if __name__ __main__:chaojiying ChaojiyingClient(超级鹰账号, 超级鹰账号的密码, 903641) # 用户中心软件ID 生成一个替换 96001im open(a.jpg, rb).read() # 本地图片文件路径 来替换 a.jpg 有时WIN系统须要//print(chaojiying.PostPic(im, 1004)) # 1902 验证码类型 官方网站价格体系 3.4版 print 后要加()# print chaojiying.PostPic(base64_str, 1902) #此处为传入 base64代码 2 打码平台自动登录打码平台 import timefrom selenium import webdriver from selenium.webdriver.common.by import By from PIL import Image from chaojiying import ChaojiyingClientbro webdriver.Chrome() bro.maximize_window()try:# 1 打开页面bro.get(https://www.chaojiying.com/user/login/)# 2 找到用户名密码验证码的输入框username bro.find_element(By.XPATH, /html/body/div[3]/div/div[3]/div[1]/form/p[1]/input)password bro.find_element(By.XPATH, /html/body/div[3]/div/div[3]/div[1]/form/p[2]/input)code bro.find_element(By.XPATH, /html/body/div[3]/div/div[3]/div[1]/form/p[3]/input)time.sleep(2)username.send_keys(账号)time.sleep(2)password.send_keys(密码)# 3 验证码破解---》网页屏幕截图---》根据验证码图片的位置和大小从网页截图中扣出验证码图片---》调用超级鹰--》完成破解---》填入# 网页截图bro.save_screenshot(main.png)# 找到img的大小和位置img bro.find_element(By.XPATH, /html/body/div[3]/div/div[3]/div[1]/form/div/img)location img.locationsize img.sizeprint(大小是, img.size)print(位置是, img.location)# 获取图的 起始位置坐标 结束位置坐标img_tu (int(location[x]), int(location[y]), int(location[x] size[width]), int(location[y] size[height]))# 使用pillow截图# #打开img Image.open(./main.png)# 抠图fram img.crop(img_tu)# 截出来的小图fram.save(code.png)# 调用超级鹰--》完成破解chaojiying ChaojiyingClient(超级鹰账号, 密码, 903641)im open(code.png, rb).read()res chaojiying.PostPic(im, 1902)if res.get(err_no) 0:code_img_text res.get(pic_str)# 写入到验证码中code.send_keys(code_img_text)time.sleep(3)submit bro.find_element(By.XPATH, /html/body/div[3]/div/div[3]/div[1]/form/p[4]/input)submit.click()time.sleep(5)except Exception as e:print(e) finally:bro.close() 3 selenium爬取京东商品信息 import time import json from selenium import webdriverbro webdriver.Chrome() bro.get(https://passport.jd.com/new/login.aspx?ReturnUrlhttps%3A%2F%2Fwww.jd.com%2F) bro.implicitly_wait(10) bro.maximize_window() input(需要手动扫码登录登录成功后敲回车)cookies bro.get_cookies() with open(jd.json, w, encodingutf-8) as f:json.dump(cookies, f)time.sleep(2) bro.close() import time import json from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys # 键盘按键操作 from selenium.webdriver.chrome.options import Optionsdef get_goods(bro):# 往下滑动屏幕bro.execute_script(scrollTo(0,document.documentElement.scrollHeight-600))# 来到了商品结果页面找到页面中所有类名叫 gl-item 的lili_list bro.find_elements(By.CLASS_NAME, gl-item)for li in li_list:try:name li.find_element(By.CSS_SELECTOR, div.p-name em).textprice li.find_element(By.CSS_SELECTOR, div.p-price i).texturl li.find_element(By.CSS_SELECTOR, div.p-imga).get_attribute(href)# 如果不滑动屏幕---》图片先放在 data-lazy-img属性中只有滑动到底部图片加载完src才有值img li.find_element(By.CSS_SELECTOR, div.p-imgaimg).get_attribute(src)shop_name li.find_element(By.CSS_SELECTOR, div.p-shop a).textprint(商品名字%s商品价格%s商品地址%s图片%s店铺名%s % (name, price, url, img, shop_name))except Exception as e:print(e)continue# 当前页爬取完成点击下一页next bro.find_element(By.PARTIAL_LINK_TEXT, 下一页)next.click()time.sleep(30)get_goods(bro) # 递归调用自己---》 下一页会出现加载失败请情况----》一直在爬第一页options Options() options.add_argument(--disable-blink-featuresAutomationControlled) # 去掉自动化控制 bro webdriver.Chrome(optionsoptions) # bro webdriver.Chrome() bro.get(https://www.jd.com) bro.implicitly_wait(10) bro.maximize_window() print(写入cookie) with open(jd.json, r) as f:cookies json.load(f) # 写到浏览器中 for item in cookies:bro.add_cookie(item) # 如果是没登录的cookie往里写会报错# 刷新浏览器bro.refresh() time.sleep(1) # 来到首页找到搜索框 try:search bro.find_element(By.ID, key)search.send_keys(卫生纸)time.sleep(2)# 敲回车search.send_keys(Keys.ENTER)# 获取商品信息get_goods(bro)except Exception as e:print(e) finally:bro.close() 4 scrapy介绍安装 # 爬虫模块requests bs4 selenium # 爬虫框架---》不是模块---》类似于django---》爬虫界的django跟djagno非常像# 安装pip3 install scrapy-maclinux 非常好装-win:看人品因为twisted装不上1、pip3 install wheel #安装后便支持通过wheel文件安装软件wheel文件官网https://www.lfd.uci.edu/~gohlke/pythonlibs3、pip3 install lxml4、pip3 install pyopenssl5、下载并安装pywin32https://sourceforge.net/projects/pywin32/files/pywin32/6、下载twisted的wheel文件http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted7、执行pip3 install 下载目录\Twisted-17.9.0-cp36-cp36m-win_amd64.whl8、pip3 install scrapy# 装完后----》scripts文件夹下就会有scrapy可执行文件---》类似于(django-admin.exe)-创建项目创建爬虫都用它# 介绍 Scrapy一个开源和协作的框架其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的使用它可以以快速、简单、可扩展的方式从网站中提取所需的数据。但目前Scrapy的用途十分广泛可用于如数据挖掘、监测和自动化测试等领域也可以应用在获取API所返回的数据或者通用的网络爬虫。Scrapy 是基于twisted框架开发而来twisted是一个流行的事件驱动的python网络框架。因此Scrapy使用了一种非阻塞又名异步的代码来实现并发。整体架构大致如下## 架构# 1 爬虫(SPIDERS) SPIDERS是开发人员自定义的类用来解析responses并且提取items或者发送新的请求 开发人员主要在这写代码设置爬取的地址解析爬取完成的数据继续爬取或者存储数据#2 引擎(EGINE) 引擎负责控制系统所有组件之间的数据流并在某些动作发生时触发事件# 3 调度器(SCHEDULER) 用来接受引擎发过来的请求, 压入队列中, 并在引擎再次请求的时候返回. 可以想像成一个URL的优先级队列, 由它来决定下一个要抓取的网址是什么, 同时去除重复的网址# 4 下载器(DOWLOADER) 用于下载网页内容, 并将网页内容返回给EGINE下载器是建立在twisted这个高效的异步模型上的# 5 项目管道(ITEM PIPLINES) 在items被提取后负责处理它们主要包括清理、验证、持久化比如存到数据库等操作# 6 下载器中间件(Downloader Middlewares)位于Scrapy引擎和下载器之间主要用来处理从EGINE传到DOWLOADER的请求request已经从DOWNLOADER传到EGINE的响应response你可用该中间件做以下几件事# 7 爬虫中间件(Spider Middlewares) 位于EGINE和SPIDERS之间主要工作是处理SPIDERS的输入即responses和输出即requests5 scrapy目录结构 # https://www.cnblogs.com/robots.txt 爬虫协议# 创建scrapy项目scrapy startproject scrapy_demo # 使用pycharm打开# 创建爬虫---》可以创建多个爬虫scrapy genspider 爬虫名 爬虫地址 # django创建appscrapy genspider cnblogs www.cnblogs.com # 创建了爬取cnblogs的爬虫# 运行爬虫默认直接爬取www.cnblogs.com---》后续需要写代码实现scrapy crawl 爬虫名字scrapy crawl cnblogs # 目录结构scrapy_demo #项目名scrapy_demo #包__init__.pyspiders #包 所有爬虫文件放在这里__init__.pycnblogs.pyitems.py # 一个个类等同于djagno的modelspipelines.py # 写如何存储存到拿settings.py# 配置文件middlewares.py # 中间件两种scrapy.cfg # 上线用的
http://www.zqtcl.cn/news/196402/

相关文章:

  • 东莞三合一网站制作网站建设 千助
  • 114网站做推广怎么样江苏建设培训网站
  • 如何让网站做网页适配网站上的产品五星怎样做优化
  • 怎么做网站排名优化免费jq网站模板
  • 源码时代培训机构官网自己建网站怎么做seo
  • 宜都网站制作济南比较大的网站制作公司
  • 怎么用电脑做网站主机假网站怎么制作
  • 网站 微信网络营销方案设计心得
  • 淘宝客 wordpress网站wordpress类似的工具
  • 农村建设房子建设网站建设渭南房产网站制作
  • php网站开发用什么win2008 iis 新建网站
  • 中山营销网站建设杭州网站建设开发有限公司
  • 被他人备案后做违法网站抖音seo推广
  • 手机网站广告代码南靖县建设局网站
  • 郑州网站建设智巢高德地图有外资背景吗
  • 网站开发常遇到客户问题wordpress怎么升级
  • 网站的空间是网站 建设 维护 公司
  • 关于网站建设的书籍网站设计的趋势
  • 临漳+网站建设深圳国贸网站建设
  • 安全的南昌网站制作上海网站建设网
  • 360网站制作潍坊医疗网站建设方案
  • 深圳网站策划公司域名解析暂时失败
  • 怎么做安居客网站wordpress 函数文件
  • 微名片网站怎么做html代码表示
  • 两学一做纪实评价系统网站如何做好百度推广
  • 网站设置手机才能播放企业网站开发需求
  • 网站建设微信运营销售做网站用啥语言
  • dw建设网站步骤活动汪活动策划网站
  • 民和县公司网站建设网站开发的特点
  • 模板企业快速建站上传网站中ftp地址写什么