KHTML

Python爬虫学习之爬美女图片

大兔子大兔子 提交于 2020-08-06 14:21:57
学习python可能最先入手的就是爬虫了,闲来没事就找了找爬点什么内容比较好。突然发现最近很流行爬去美女图片啊!!!!二话不说,搞起来。 先来看看网站长啥样。 再看看网站的Html结构。 好了,知道了网站html结构,name就开干吧。先创建py文件,引入第三方包urllib.request、BeautifulSoup和os。 1、创建文件保存方法 2、定义请求头 3、网页分析 4、主函数 5、结果 6、程序源码 import urllib.request from bs4 import BeautifulSoup import os def Download(url, picAlt, name): path = ' D:\\tupian\\ ' + picAlt + ' \\ ' # 判断系统是否存在该路径,不存在则创建 if not os.path.exists(path): os.makedirs(path) # 下载图片并保存在本地 urllib.request.urlretrieve(url, ' {0}{1}.jpg ' .format(path, name)) #定义请求头 header = { " User-Agent " : ' Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like

requests用法基础-进阶

亡梦爱人 提交于 2020-08-06 03:14:38
本节内容 模块的安装 -----------------------基础用法--------------------- GET用法、POST用法 -----------------------进阶用法-------------------- cookie处理、代理ip、session 一 模块安装: 1). 安装requests包还是很方便的,电脑中有python环境,打开cmd,输入pip install requests下载; 如果有同学使用pycharm的话,选择file-->setting-->Project interpreter-->右边"+"号点击--->输入模块名---->选中下载。 2). requests的作用、特点、以及使用流程 作用:模拟用户使用浏览器上网 特点:简单、高效 使用流程: 指定url; 发起请求(requests.get/post); 获取响应信息/数据(response); 持久化存储(保存csv、MySQL、txt等); 二基本用法: 1). get(url,headers,params):各用法 获取搜狗首页的页面数据: 1 import requests # 引包 2 # 1指定url 3 url = ' https://www.sogou.com/ ' 4 # 2.发起请求 5 response = requests.get(url=

VMLogin 配置高手进阶尽在 vmlogin.cc

半腔热情 提交于 2020-08-05 14:12:05
VMLogin浏览器配置文件设置非常重要,如果设置有明显的冲突或不符合常理,那么所应用到的场景可能就会受到影响。下面我们来看看哪些不合常理的配置例子: WebGL vendor (供应商): 像苹果手机和苹果电脑一般都是 WebGL vendor :Apple Inc. WebGL renderer(渲染器):Apple GPU 如果我们是 Windows 系统情况下,大部分是: WebGL vendor :Google Inc. 我们在做实验的情况下Chrome浏览器和Internet Explorer(Edge)测试取WebGL vendor 会有两种不同值 ,Chrome 取为 Google Inc. Internet Explorer(Edge)取为 Microsoft ,所以 WebGL vendor 不能完全翻译为《显卡供应商》,因为它和浏览器开发商有关。我们有趣的发现Firefox浏览器取值 WebGL vendor :Google Inc. 所以这里我们可以得出一个结论:如果我们把User-Agent标识成了Chrome 和 Firefox 浏览器,那么最好 windows 系统 WebGL vendor 设置为Google Inc. 比较合理。 高手 User-Agent 配置不得不熟悉 首先,我们来了解一下什么是 User-Agent。 User

挑战每分钟爬取100个视频,只要网速够快,反爬就追不到我

ε祈祈猫儿з 提交于 2020-08-05 13:40:02
前言 好看视频大部分是精品短视频!相同的接口返回不同的视频给用户 今天就带大家把系统推荐的视频给爬取下来! 知识点 1、动态数据抓包演示 2、json数据解析方法 3、视频数据保存 环境介绍 python 3.6 pycharm requests json 爬虫的一般思路 1、分析目标网页,确定爬取的url路径,headers参数 2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据 3、解析数据 4、保存数据 -- 保存在目标文件夹中 步骤 1、导入工具 import requests import time import pprint 2、确定爬取的url路径,headers参数 # 获取时间戳 """ 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。 秒级时间戳,10位 毫秒级时间戳,13位 微秒级时间戳,16位 """ time_one = str(int(time.time() * 1000 )) # print(time_one) base_url = ' https://haokan.baidu.com/videoui/api/videorec?tab=gaoxiao&act=pcFeed&pd=pc&num=20&shuaxin_id= ' + time_one

爬虫 全国建筑市场监管服务平台小程序 数据抓取与采集

人盡茶涼 提交于 2020-08-05 13:28:25
原来发了几遍文章关于 全国建筑市场监管公共服务平台(四库一平台)平台的网站数据采集和抓取: 建筑资质爬虫抓取-全国建筑市场监管公共服务平台(一)入门篇 建筑资质爬虫抓取-全国建筑市场监管公共服务平台(二)-接口篇 新版建筑市场(四库一平台)抓取最新信息(爬虫) 最近发现 建筑市场监监管平台推出了自己的小程序《全国建筑市场监管服务平台》。 ​在使用过程中,发现没有前端的辅助验证码,和一些访问的现在,于是就研究如何通过小程序来抓取数据,经过的学习和研究基本完成的数据的采集和抓取,就把整个流程最一点记录,如果需要相关的技术支持和爬虫数据可以联系我(QQ:397713472 电话:13880334484[微信同号])。 一、使用爬虫抓包工作抓取小程序访问链接 我喜欢用 Fiddler 抓包工具,我这里就不详细说怎么配置和安装,这个网上的教程很多;安装和配置好了,我们访问小程序,在Fiddler上面就看到相关的访问链接: 然后通过分析小程序的接口就两个 https://sky.mohurd.gov.cn/skyapi/api/statis/getExtResult https://sky.mohurd.gov.cn/skyapi/api/statis/getResult 都是通过改变参数keys的方式来实现相关业务,这里就不多少,通过接口很轻松的分析相关的功能。 二

python 采集斗图啦(多线程)

徘徊边缘 提交于 2020-08-05 04:54:57
import concurrent import requests; from concurrent.futures import ThreadPoolExecutor import os; import parsel; def send_request(url): header = { "user-agent":'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' } requests.packages.urllib3.disable_warnings() response = requests.get(url,headers=header) return response def pare_data(data): selector = parsel.Selector(data) result_list = selector.xpath('//a[@class="col-xs-6 col-sm-3"]') for result in result_list: title = result.xpath('./img/@alt').get() src_url = result.xpath('.

短信接口防恶意攻击策略

懵懂的女人 提交于 2020-08-05 04:46:59
如下是用户页面交互。输入手机号,即可获取验证码。用户体验方面已经超级简单了。 不过,简单是要有成本的。安全控制方面,程序员得琢磨。 在系统安全、信息安全、系统安全防御领域,短信盗刷是老生常谈的话题了。我们公司的系统也经历过至少3次盗刷。每次动辄损失2万~5万条的短信。 近几年,随着qq授权登录、微信授权登录等登录方式的流行,短信盗刷的情况似乎是少了。不过,互联网企业总是习惯要留下用户的手机号的,毕竟这么做非常利于流量获取。 短信验证码登陆,通常的做法是图形验证码。简单实现的话,就是 当用户输入的手机号发生变化时,页面异步请求服务端生成图形验证码的接口,服务端返回图片文件流,页面生成验证码图片。用户输入验证码,然后请求服务端获取验证码的接口。服务端会校验用户输入的验证码是否正确,正确了才会发送短信验证码。 因为图形验证码是通过文件流传输的,所以很难破解。当然,倒是有识别图片的工具,不管怎么说,还是有一定难度的。不识别图片呢?随机生成4位验证码,用撞库的方式来恶搞?显然,命中的几率也很小。就是说,用图形正麻烦的方式,恶意攻击的难度比较大。 我们看12306或其他的互联网网站,动不动让选特定的图形,或滑动拼图,或依次选特定的文字,这种安全性都是相当高的。 据说,阿里的招数更绝!可以记录鼠标在页面的轨迹,进而识别出来是人在操作,而非机器模拟。 所谓安全,安防,说白了,是防君子不防小人的

nodejs 用 axios 向osc服务器上传图片[需要cookie]

偶尔善良 提交于 2020-08-05 00:10:47
通过http请求查看request数据, 复制请求头和cookie 代码 const axios = require('axios') const fs = require('fs') const img_path = './t2.jpg' const FormData = require("form-data"); const url = "https://my.oschina.net/ahaoboy/space/ckeditor_dialog_img_upload" const headers = { "accept": "*/*", "accept-language": "zh-CN,zh;q=0.9,en;q=0.8", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "cookie": "===", "referrer": "https://my.oschina.net/ahaoboy/blog/write/4326713", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103

python 采集斗图啦xpath

主宰稳场 提交于 2020-08-04 22:44:26
import requests; import re; import os; import parsel; 1.请求网页 header = { "user-agent":'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' } response = requests.get(' https://www.doutula.com/photo/list/',headers=header ) html = response.text 2.解析网页 selector = parsel.Selector(html) print(selector) dir_name = 'doutu_list' if not os.path.exists(dir_name): os.mkdir(dir_name) result_list = selector.xpath('//a[@class="col-xs-6 col-sm-3"]') for result in result_list: title = result.xpath('./img/ @alt ').get() img_url = result.xpath

ubuntu下的curl命令你知道怎么用吗?

空扰寡人 提交于 2020-08-04 18:12:21
cURL(CommandLine Uniform Resource Locator)是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。 curl命令参数很多,这里只列出我曾经用过、特别是在shell脚本中用到过的那些。 -v/--verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。 -m/--max-time <seconds> 指定处理的最大时长 -H/--header <header> 指定请求头参数 -s/--slient 减少输出的信息,比如进度 --connect-timeout <seconds> 指定尝试连接的最大时长 -x/--proxy <proxyhost[:port]> 指定代理服务器地址和端口,端口默认为1080 -T/--upload-file <file> 指定上传文件路径 -o/--output <file> 指定输出文件名称 -d/--data/--data-ascii <data> 指定POST的内容 --retry <num> 指定重试次数 -e/--referer <URL> 指定引用地址 -I/--head 仅返回头部信息,使用HEAD请求 1 get请求