目录
本文是全系列中第13 / 23篇:python学习记
- python request 使用代理服务器访问
- python request 对应的HTTP Header头
- Python request 携带cookies访问
- Python Request 请求的时候HTTP status code的响应代码是什么意思
- 这个问题好麻烦,使用了python的xmlrpc 发布数据,但是这个wordpress总会有502这个错误产生
- List of Dictionaries 是什么类型
- 这两个怎么会不一样呢,list还是dict,都是list的话又有什么区别呢
- 这种字符串到底是list还是dict,傻傻分不清怎么办?Python遇到这种List[dict]怎么取出中间的数值呢
- python遇到wordpress xmlrpc 模块的AttributeError: module 'collections' has no attribute 'Iterable'问题怎么解决
- 为什么我的python的request的结果都是不能格式化成json输出呢
- python操作文件常用到的函数
- 太恶心了,直接反编译一下再修改得了
- google翻译的API竟然还是按小时收费的,那就算了
- 简直是可以吐血身亡了,learndash本身就支持这样的api直接使用api调用就行了
- 如果是pyinstall编译过的exe程序可以直接使用这个软件反编译出来
- 使用python可以直接在selenium采集就可以了
- 搞了半天,我用pyinstall解决不了的问题用pythonautopy解决了
- woocommerce的REST API没有写这个tag怎么写入,但是我读取了一个看到这个格式其实还是这样子的。。。
- sql过滤语句测试
- python更新mysql的update语句竟然是这两个标点符号的问题
- mysql的这个sql语句为什么总是更新失败呢...
- 计划: python实现图片下载自动分类
- woocommerce直接创建一个REST API接口,太方便了。。。
比如在国内其实于很多这样的网站
也不是说非要使用google api
代码:
def make_requests(): response = [None] responseText = None if(request_fanyi_900cha_com(response)): responseText = read_response(response[0]) response[0].close() def read_response(response): if response.info().get('Content-Encoding') == 'gzip': buf = BytesIO(response.read()) return gzip.GzipFile(fileobj=buf).read().decode('utf8') elif response.info().get('Content-Encoding') == 'deflate': decompress = zlib.decompressobj(-zlib.MAX_WBITS) inflated = decompress.decompress(response.read()) inflated += decompress.flush() return inflated.decode('utf8') return response.read().decode('utf8') def request_fanyi_900cha_com(response): response[0] = None try: req = urllib.request.Request("https://fanyi.900cha.com/my/") req.add_header("Connection", "keep-alive") req.add_header("Pragma", "no-cache") req.add_header("Cache-Control", "no-cache") req.add_header("sec-ch-ua", "\".Not/A)Brand\";v=\"99\", \"Google Chrome\";v=\"103\", \"Chromium\";v=\"103\"") req.add_header("sec-ch-ua-mobile", "?0") req.add_header("sec-ch-ua-platform", "\"Windows\"") req.add_header("Origin", "https://fanyi.900cha.com") req.add_header("Upgrade-Insecure-Requests", "1") req.add_header("DNT", "1") req.add_header("Content-Type", "application/x-www-form-urlencoded") req.add_header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36") req.add_header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9") req.add_header("Sec-Fetch-Site", "same-origin") req.add_header("Sec-Fetch-Mode", "navigate") req.add_header("Sec-Fetch-User", "?1") req.add_header("Sec-Fetch-Dest", "document") req.add_header("Referer", "https://fanyi.900cha.com/my/") req.add_header("Accept-Encoding", "gzip, deflate, br") req.add_header("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8") req.add_header("Cookie", "Hm_lvt_c6638ca3ceb11f7967e468ee00ced931=1657536004; XSRF-TOKEN=eyJpdiI6ImdjZW9OdnJrUU5aMGs0MFJPVHh1RVE9PSIsInZhbHVlIjoiMUl5UThyalJnODlJVlNOaEZYTFM2UnBCejlOVHlmbmpXeGMrb3pkZ0dSM1NNXC9wTHk2N21OdkRCWXFlZm1HMk9JSXE5U003b2ZzVnprWFYrRVRlTlhRPT0iLCJtYWMiOiI5ZmEzOWI0N2RkYzY1YzY4ZTY0NjMxMGUzNjNiYzcxM2U2ZTZmNzg0YTM5MjE2ZWZiMzE4YjU2YjgzMDdmNTIyIn0%3D; 900_session=eyJpdiI6IkNBRVo5S1NuZnZCaGE2N3JxRFdIc2c9PSIsInZhbHVlIjoiY3Z4VzhVb3ZaQ2w1T0dlTUsxeGRHaFVQSFpqZGZ6cCtMS1o0OUtNT3lFNkd6MjNTS0VaSk50eG1uSk1WXC9QUEhXcmlUamRUQnVaMGEwUW5INStCQlVBPT0iLCJtYWMiOiIxYzgwMzc4MjVjYzFkMDkxMGQxNGViNjVmYzQxNDhiOTllMmI1YzQ5NDQyNzZlMzMzMTc5NjVjMGU2NjVhNDVhIn0%3D; Hm_lpvt_c6638ca3ceb11f7967e468ee00ced931=1657536081") body = b"content=%E9%AB%98%E5%93%81%E8%B4%A8%E7%89%9B%E4%BB%94%E7%9F%AD%E8%A3%A4%EF%BC%8C%E7%A0%81%E6%95%B026%E5%88%B030%EF%BC%8C%E7%8B%AC%E7%AB%8B%E5%8C%85%E8%A3%85%EF%BC%8C%E6%95%B0%E9%87%8F700%E6%9D%A1%EF%BC%8C%E5%90%AB%E6%B3%AA%E8%A1%80%E4%BA%8F+%E7%A7%92%E6%9D%80%E6%89%8B%E6%85%A2%E6%97%A0%E3%80%82%E6%AC%BE%E5%8F%B7%EF%BC%9AC130&direction=source&_token=BAZNibcmpTFjYXmYvPplPbxONdN2djwhFuNjKnyd" response[0] = urllib.request.urlopen(req, body) except urllib.error.URLError as e: if not hasattr(e, "code"): return False response[0] = e except: return False return True