热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【C#爬虫】使用C#进行bing翻译爬取

​ 首先我们打开bing翻译页面并将浏览器控制台打开​编辑然后在文本框随便输入看右侧工作台中网络里面请求的变化经过多次输入​编辑可以看到每次输入字符后都会触发这几个请求如此

 首先我们打开bing翻译页面 并将浏览器控制台打开

编辑

然后在文本框随便输入 看右侧工作台中网络里面请求的变化 经过多次输入

编辑

可以看到每次输入字符后 都会触发这几个请求 如此我们范围可以缩小到这三个请求上

首先从他们三个返回值上入手

编辑

不难看出第一请求 https://cn.bing.com/ttranslatev3? 的返回值就是我们需要的 需要的数据,

接下来便看请求参数

编辑

 接下来麻烦事就是找到这些请求值产生的地方 这些请求值中 

通过缓存清理和postman 测试提交  isVertical 和iid 目前是固定的没有任何变化(其实本人懒,懒得去找!)

剩下 IG,fromlang,text,to,token,key几个参数 不难分析 fromlang,text,to 分别对应

当前待翻译的字符串语言 、待翻译的文本和需要翻译的目标语言

所以 最终我们需要找的的就是IG、Token和key

而刚开始我们打开网络的时候就可以看出 页面和css加载完成后

编辑

有一条请求携带了IG 通过这台信息 很大几率IG 可能在页面中 

这个时候直接查看页面源码  通过IG值搜索 发现两天 而且两条变量名 都是IG 证明我们的猜测成立

编辑

 接下来 需要找到的值 也只剩下token 和key了

通过搜索token值 发现指向到translator页面

编辑

 此时到源代码页面搜索token值 发现token 存在 

编辑

 那么接下来剩下key值,但细心的人会发现 token 值前面的值很像key值 

经过对比证实了我们猜想 没有想到在寻找token的时候就顺带找到key值,所以我们得在找结果需要细心处理和观察,如此我们需要的值全部拿到,同时丢到apifox

编辑

请求能通过 多次测试刷新页面 拿到 token、key和ig 值 请求皆能通过

如此接口也成功拿下

下面开始写C#请求代码

首先拉页面获取token,ig,key这里使用HttpClient类库

编辑

然后通过字符串正则处理 拿到这三个值(本人正则写的孬,不好意思展示)

后面仿照请求 去真正翻译接口 注意请求类型是 application/x-www-form-urlencoded

编辑

 另外 user-agent 记得带上 ua  ua获取浏览器随便打开一请求找到请求表头 里面user-agent

复制值拿来用就行了

 

至此我们bing翻译爬虫程序已经完成

(第一次写文章,技术有限 写的不好 请大家见谅!)



推荐阅读
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • Monkey《大话移动——Android与iOS应用测试指南》的预购信息发布啦!
    Monkey《大话移动——Android与iOS应用测试指南》的预购信息已经发布,可以在京东和当当网进行预购。感谢几位大牛给出的书评,并呼吁大家的支持。明天京东的链接也将发布。 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
  • HTML5网页模板怎么加百度统计?
    本文介绍了如何在HTML5网页模板中加入百度统计,并对模板文件、css样式表、js插件库等内容进行了说明。同时还解答了关于HTML5网页模板的使用方法、表单提交、域名和空间的问题,并介绍了如何使用Visual Studio 2010创建HTML5模板。此外,还提到了使用Jquery编写美好的HTML5前端框架模板的方法,以及制作企业HTML5网站模板和支持HTML5的CMS。 ... [详细]
  • 本文整理了315道Python基础题目及答案,帮助读者检验学习成果。文章介绍了学习Python的途径、Python与其他编程语言的对比、解释型和编译型编程语言的简述、Python解释器的种类和特点、位和字节的关系、以及至少5个PEP8规范。对于想要检验自己学习成果的读者,这些题目将是一个不错的选择。请注意,答案在视频中,本文不提供答案。 ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • 软件测试对于减少程序BUG有多大帮助?有经验的程序员通常认为测试与代码同等重要,测试可以减少代码变更或扩展的不确定性。测试应该方便阅读简单且能快速运行 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
author-avatar
jesusestella
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有