首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Python之JavaScript逆向系列——使用ip代理访问目标网站

Python之JavaScript逆向系列——使用ip代理访问目标网站

作者头像
红目香薰
发布2023-12-20 09:37:34
发布2023-12-20 09:37:34
4960
举报
文章被收录于专栏:CSDNToQQCodeCSDNToQQCode

Python之JavaScript逆向系列——使用ip代理访问目标网站


目录

Python之JavaScript逆向系列——使用ip代理访问目标网站

前言

环境准备

正文

IP代理基础代码

确认IP请求地址


前言

大家好,本系列文章主要为大家提供的价值方向是网络信息获取,自动化的提取、收集、下载和记录互联网上的信息,加之自身分析,可以让价值最大化。整个内容中不会涉及到过为敏感的内容。

在这个AI+云计算+大数据时代,我们眼睛所看到的百分之九十的数据都是通过页面呈现出现的,不论是PC端、网页端还是移动端,数据渲染还是基于HTML+JavaScript进行的,而大多数的数据都是通过request请求后台API接口动态渲染的。而想成功的请求成功互联网上的开放/公开接口,必须知道它的【URL】、【Headers】、【Params】、【Body】等数据是如何生成的。我们需要了解浏览器开发者工具的功能,入门JS逆向,入门后还需要掌握例如如何【反编译js混淆】等内容,为了避免封本机IP,还需要对每次访问的IP进行代理,当我们拥有了JS逆向的能力后,根据JS所返回的动态请求参数信息便可以进行Python的具体信息获取操作,需要的知识点非常的多,故而本系列文章理论+实践会达到上百篇的文章,这篇文章是总篇,为了方便大家来直接查找所有知识点,建议之间关注收藏本篇,期望能给大家带来更高的价值。

环境准备

系统环境:win11

开发工具:PyCharm: the Python IDE for Professional Developers by JetBrains

IP代理:品易HTTP - 代理IP日更400万 - 为企业提供HTTP代理IP定制服务

api工具:Eolink - 一体化API在线管理平台_API接口管理_接口自动化测试

数据库:MySQL5.7.32——阿里云RDS数据库

主要python库:requests、PyExecJS、parsel

正文

IP代理基础代码

基本的品易python代码ip与端口获取代码:

代码语言:javascript
复制
import requests


def getIP():
    url = "http://zltiqu.pyhttp.taolop.com/getip?count=1&neek=*****&type=1&yys=0&port=1&sb=&mr=1&sep=1"
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.289 Safari/537.36"
    }
    result = requests.get(url, headers=headers)
    resIP = result.text.split(":")
    proxyHost = resIP[0]
    proxyPort = resIP[1].replace("\r\n", "")
    proxyMeta = "%(host)s:%(port)s" % {

        "host": proxyHost,

        "port": proxyPort,

    }
    proxies = {

        "http": proxyMeta,

        "https": proxyMeta

    }
    return proxies

# 请求测试
print(getIP())

确认IP请求地址

可以在图片示例中看到本地请求的地址以及使用ip代理请求地址的区别。

代码语言:javascript
复制
import requests


def getIP():
    url = "http://zltiqu.pyhttp.taolop.com/getip?count=1&neek=*****&type=1&yys=0&port=1&sb=&mr=1&sep=1"
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.289 Safari/537.36"
    }
    result = requests.get(url, headers=headers)
    resIP = result.text.split(":")
    proxyHost = resIP[0]
    proxyPort = resIP[1].replace("\r\n", "")
    proxyMeta = "%(host)s:%(port)s" % {

        "host": proxyHost,

        "port": proxyPort,

    }
    proxies = {

        "http": proxyMeta,

        "https": proxyMeta

    }
    return proxies


headers = {
    "Accept": "text/plain, */*; q=0.01",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.289 Safari/537.36"
}

url = "https://mail.163.com/fgw/mailsrv-ipdetail/detail"
re_loaclhost = requests.get(url, headers=headers)
print(re_loaclhost.text)
re_pinyiIP = requests.get(url, headers=headers, proxies=getIP())
print(re_pinyiIP.text)

在代码中我们能看到知识添加了对应的【proxies】进行访问,这个也就是python的IP代理使用方法,留下这个基础代码会在以后的内容中经常出现,我们需要单独记录一下,可以自己留下这部分代码,随时使用。

流量消耗速度还OK。

看具体的网络请求

看到这类的数据我们就得涉及到js的反编译了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-12-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python之JavaScript逆向系列——使用ip代理访问目标网站
  • 前言
  • 环境准备
  • 正文
  • IP代理基础代码
  • 确认IP请求地址
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档