Python編寫有道翻譯介面小工具
前幾天剛剛學習了urllib和json庫
urllib 庫主要是檢視一個網站網頁的原始碼。多於正則,bs配合編寫爬蟲。
它還有一個重要的功能是,能向網站提交get post的請求
還有附帶的幾個模組
urllib.request 請求模組
urllib.error 異常處理模組
urllib.parse url解析模組
urllib.robotparser robots.txt解析模組
urlopen:response = urllib.request.urlopen('http://httpbin.org/get', timeout=0.1)
request:request = urllib.request.Request('https://python.org')
response = urllib.request.urlopen(request) 等同上一條
add_headers:新增頭資訊
request = urllib2.Request(url)
request.add_header('User-Agent', 'fake-client')
response = urllib2.urlopen(request)
ProxyHandler:設定代理
import urllib.request proxy_handler = urllib.request.ProxyHandler({ 'http': 'http://127.0.0.1:9743', 'https': 'https://127.0.0.1:9743' }) opener = urllib.request.build_opener(proxy_handler) response = opener.open('http://httpbin.org/get') print(response.read())
HTTPCookiProcessor:新增cookie
import http.cookiejar, urllib.request cookie = http.cookiejar.CookieJar() handler = urllib.request.HTTPCookieProcessor(cookie) opener = urllib.request.build_opener(handler) response = opener.open('http://www.baidu.com') for item in cookie: print(item.name+"="+item.value)
json庫:主要編寫字串
#!/usr/bin/python
import json
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
json = json.dumps(data)
print json
準備以此編寫一個小東西
import urllib.request
import json
import urllib.parse
#Request URL
import io
import sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')
while 1:
i = input("請輸入要翻譯的文字(---q---退出):")
if i=='q':
print("退出")
break
url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"
data = {}
header = {}
header["User-Agent"] = "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
data['action'] = 'FY_BY_CLICKBUTTION'
data['client'] = 'fanyideskweb'
data['doctype'] = 'json'
data['from'] = 'AUTO'
data['i'] = i
data['keyfrom'] = 'fanyi.web'
data['salt'] = '1531752128194'
data['sign'] = '88c77b4bcd6541ac488740afd5919019'
data['smartresult'] = 'dict'
data['to'] = 'AUTO'
data['typoResult'] = 'false'
data['version'] = '2.1'
#轉碼,data引數如果要傳必須傳bytes(位元組流)型別的,如果是一個字典,先用urllib.parse.urlencode()編碼。
data = urllib.parse.urlencode(data).encode("utf-8")
#開啟連結
req = urllib.request.Request(url,data,header) #Request設定,傳送資料和header
response = urllib.request.urlopen(req)
# response = urllib.request.urlopen(url,data,head)
#轉為Unicode
html = response.read().decode("utf-8") #輸出為json格式
#json檔案讀取
target = json.loads(html)
#最終字典列表輸出
print(target["translateResult"][0][0]["tgt"])
以上指令碼cmd執行就可以得到一個線上的有道翻譯的介面。
小白。。。。。大佬勿噴!
相關推薦
Python編寫有道翻譯介面小工具
前幾天剛剛學習了urllib和json庫 urllib 庫主要是檢視一個網站網頁的原始碼。多於正則,bs配合編寫爬蟲。 它還有一個重要的功能是,能向網站提交get post的請求 還有附帶的幾個模組 urllib.request 請求模組 urllib.error 異
python 自制有道翻譯工具
一、登陸有道翻譯頁面,分析請求 url地址:http://fanyi.youdao.com/ 綜合上述分析,當改變裡面內容時,Form Data(向後臺傳送的資料)中salt、sign、ts的值在變化,其他幾個沒有變化 二、找到請求的JS 連結地址為:http://shar
用Python破解有道翻譯反爬蟲機制
破解有道翻譯反爬蟲機制 web端的有道翻譯,在之前是直接可以爬的。也就是說只要獲取到了他的介面,你就可以肆無忌憚的使用他的介面進行翻譯而不需要支付任何費用。那麼自從有道翻譯推出他的API服務的時候,就對這個介面做一個反爬蟲機制(如果大家都能免費使用到他的翻譯介面,那他的
Python(4) 用Python破解有道翻譯反爬蟲機制
web端的有道翻譯,在之前是直接可以爬的。也就是說只要獲取到了他的介面,你就可以肆無忌憚的使用他的介面進行翻譯而不需要支付任何費用。那麼自從有道翻譯推出他的API服務的時候,就對這個介面做一個反爬蟲機制(如果大家都能免費使用到他的翻譯介面,那他的API服務怎麼賺錢)。這個反爬蟲機制在爬
有道翻譯介面 破解
有道翻譯 API 最近有些任務需要將中文翻譯成英文,由於個人英文水平問題,每次都要開啟好幾個線上翻譯網頁,一句一句的丟進去,取最佳者為所用,甚是麻煩。 任務完成之後,就稍微研究了一下各個翻譯介面(Github地址,求star),下面以 “有道翻譯 API”
【Python學習】python爬蟲有道翻譯的實現
一、有道翻譯 1.1 實驗環境 Anaconda2-4.3.1(Python2.7) 1.2 所需模組 ①request ②json 1.3 一些
利用python進行有道翻譯
# -*- coding: UTF-8 -*- from urllib import request from urllib import parse import json def youdao(English): Request_URL='http://fany
基於微信公眾平臺的Python開發——有道翻譯
版本:1.1,請求方式:get,編碼方式:utf-8 主要功能:中英互譯,同時獲得有道翻譯結果和有道詞典結果(可能沒有) 引數說明: type - 返回結果的型別,固定為data doctype - 返回結果的資料格式,xml或json或jsonp version - 版本,當前最新版本為
python編寫檢視是否有新郵件的小工具
最近因為總是要檢視是否有重要的工作郵件,頻繁登入幾個郵件網站,覺得很繁瑣,於是用python寫了個查詢是否有新郵件和下載郵件資訊的小工具。至於為什麼沒寫收取郵件的工具,是因為不是每天都收到新郵件,而且現在很多廣告郵件,不必都收取。 使用過程:先通過小工具檢查是否有新郵
【Python爬蟲】有道翻譯最新爬蟲教程,帶GUI應用介面,2018年3月18日實測可用
最新的有道翻譯爬蟲程式碼,包含應用程式介面,更新於20180318import urllib.request import urllib.parse import json import time import gzip import random import hashli
【python爬蟲小實戰】python3.x用requests和bs4實現有道翻譯(中英文)
一直用的是python3.x版本的,剛開始學爬蟲的時候學長給了我個爬有道翻譯的小程式,實現中英文翻譯,由於是用urllib庫的,當時也是剛接觸python,所以一臉懵逼,現在學了一個月了,回頭再看了一下,感覺很時間單,於是就用requests庫和bs4,加上js
Python 呼叫有道的翻譯介面
最近為了熟悉一下 js 用有道翻譯練了一下手,寫一篇部落格記錄一下,也希望能對大家有所啟迪,不過這些網站更新太快,可能大家嘗試的時候會有所不同。 首先來看一下網頁 post 過去的資料 大家不難發現,我們翻譯的內容是放在 post 的 data 中
運用有道api介面寫一個小翻譯(簡單版)
package com.zhidi.zuoye; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStrea
有道翻譯小介面練習post請求py2
# -*- coding:utf-8 -*-import urllibimport urllib2#post請求urlurl = 'http://fanyi.youdao.com/translate'#post請求headersheaders = {"User-Agent":
python之爬蟲的入門03------post請求偽造、程式猿是怎麼玩有道翻譯
import urllib.request import urllib.parse import json content = input('請輸入要翻譯內容:') # url = 'http://fanyi.youdao.com/translate_o?smartresult=di
利用爬蟲技術,仿有道翻譯小案例
import requests import time import hashlib import json inputInfo = input('請輸入你想要翻譯的內容:') # 請求的url必須是點選翻譯後跳轉出來的頁面路由 url = 'http://fanyi.youdao.co
基於Python的多執行緒爆破小工具!誰用誰就知道它有多屌了!
0×0 背景 進群:548377875 就可以獲取數十套小編精心準備的PDF以及零基礎到進階的教程! Patator是出於對使用Hydra,Medusa,Ncrack,Metasploit模組和Nmap NSE指令碼進行密碼猜測攻擊而感到失望後, 選擇了不
要考三級了!我用Python把有道詞典單詞轉化成EXCEL!答題小助手
import xml.etree.ElementTree as ET import pandas as pd import numpy as np tree = ET.parse('words.xml') root = tree.getroot() words = pd.Da
有道非官方介面-查詢英語單詞詳細資訊 C# 有道API翻譯 查詢單詞詳細資訊
有道翻譯有官方介面,也有非官方介面。 有道官方介面 官方介面:https://openapi.youdao.com/openapi 可查詢英語單詞註釋、單詞發音、網路釋義(不一定存在),可獲取線上發音地址。 具體使用,可參考 C# 有道API翻譯 查詢單詞詳細資訊 有道非官方介面 何謂非官方介面,
python 有道翻譯
import requests import time import random import hashlib i = str(int(time.time()*1000)+random.randint(1,10)) t = input("please input the word you want t