资源简介
python自动登陆该网站并下载网站内容:功能主要有自动登陆、自动识别验证码、以及自动识别下载格式进行判断下载!
代码片段和文件信息
import requests
from lxml import etree
import re
import time
import os
from aip import AipOcr
from PIL import Image
# 本代码是研究了好久才写出来,七功能主要有自动登陆、自动识别验证码、以及自动识别下载格式进行判断下载!
# 首先,搬上我们的主角网址,http://lavteam.org/,进去一看,是一个俄罗斯人创建的网站,七内容让我们不亦乐乎。
session = requests.Session()
headers = {
‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/68.0.3440.106 Safari/537.36‘
}
first_url = ‘http://www.lavteam.org/‘
# 2. 登陆
# 要进行分析,首先要注册一个账号,账号各位自己注册。
# 抓包发现,他的登陆请求地址为http://www.lavteam.org/,其中表单:
# login_name: ******
# login_password: ******
# login: submit
# image.x: 43
# image.y: 11
# 我们构造表单,进行请求,其函数为:
def login():
print(‘正在登陆......‘)
req = session.get(first_url)
data = {
‘login_name‘: ‘账号‘
‘login_password‘: ‘密码‘
‘login‘: ‘submit‘
‘image.x‘: ‘47‘
‘image.y‘: ‘8‘
}
req = session.post(first_urldata = data)
print(‘登陆成功!‘)
# 3. 查询
# 登陆进去就需要查找自己想要的内容,比如我们输入ventsim,然后进行抓包,抓包得到:
#
# Request URL:
# http://lavteam.org/
#
# Request Method:
# POST
#
# 其表单为:
# 接着我们再构造其请求,请求返回的内容列表我把他整理成字典的格式,方便在于我只要输入软件编号,就可以对该内容进行深入操作,
# 我对多页内容都进行了遍历,所有的内容链接都整理了出来,代码如下:
def reach(ventsim):
data = {
‘do‘: ‘search‘
‘subaction‘: ‘search‘
‘story‘: ventsim
‘x‘: ‘42‘
‘y‘:‘9‘
}
req = session.post(first_urldata = data).text
html = etree.HTML(req)
url = html.xpath(‘//div[@class=“text-left“]/a/@href‘)
name = html.xpath(‘//div[@class=“text-left“]/a/text()‘)
num = html.xpath(‘//div[@class=“navigation ignore-select“]/a/text()‘)[-2]
f = {}
for i in range(len(name)):
f[i] = url[i]
print(iname[i])
for k in range(int(num)-1):
search_start = 2 + k
result_from = 11 + 10*k
data = {
‘do‘: ‘search‘
‘subaction‘: ‘search‘
‘search_start‘: str(search_start)
‘full_search‘:‘0‘
‘result_from‘: str(result_from)
‘story‘: ventsim
}
req = session.post(‘http://www.lavteam.org/index.php?do=search‘ data=data).text
html = etree.HTML(req)
url = html.xpath(‘//div[@class=“text-left“]/a/@href‘)
name = html.xpath(‘//div[@class=“text-left“]/a/text()‘)
for j in range(len(name)):
f[(k+1)*10+j] = url[j]
print((k+1)*10+jname[j])
return f
# 4. 进入详情界面
# 我们从上一步查询的返回值中,找到软件详情页面的链接,然后进行请求,抓包得到的结果:
# Request URL:
# http://lavteam.org/2018/04/02/howden-group-ventsim-visual-premium-v4869.html
#
# Request Method:
# GET
# IDA Console Courier New monospace“>然后再用python进行构造这个请求,代码如下:
def intopage(url):
page = session.get(url).text
html = etree.HTML(page)
url = html.xpath(‘//a[@target=“_blank“ and @class = “medium blue awesome“or @class = “medium red awesome“ or @class = “small blue awes
相关资源
- Python编程入门经典源代码
- 泰坦尼克号0.81准确率python源代码.py
- python随机子空间法.py
- opencv_python-3.4.5 contrib-cp37-cp37m-win_amd
- Python-一个非常简单的BiLSTMCRF模型用于
- Python-Tensorflow仿AlphaGo框架实现的AI围棋
- opencv-contrib_python-3.4.2.16-cp37-amd64.zip
- Python语言在Abaqus中的应用高清版pdf
- 数据结构与算法:Python语言实现课后
- python3.6 绿色版
- 基于python的道路视频车道线检测
- win7,64位,python3.5.2下的安装包:nu
- 基于Python3 tkinterGUI界面实现读取本地
- Python实现购物评论文本情感分析操作
- Python中HHT(希尔伯特-黄变换)以及其
- Python 3.8.1 32位安装包.zip
- OpenCV+3计算机视觉++Python语言实现 高清
- matlab代码转换为python代码
- python实现hmm
- Python-GUI-PyQ5总概述.xmind
- 基于python实现的BS架构FTP服务器程序
- Networkx安装步骤及资源
- python深度学习-高清pdf-源码
- 嵩天 礼欣 黄天羽 著 Python语言程序
- Python3.8.0 官方中文帮助文档 API参考手
- Introduction to Computation and Programming Us
- 亚马逊电子书-Keras快速上手:基于P
- ROS系统上的python应用开发实践讲解与
- python 数据挖掘入门与实战 pdf+代码
- Python3.4 PyQt5 32位安装版PyQt5-5.5.1-gpl-
评论
共有 条评论