V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ClericPy  ›  全部回复第 75 页 / 共 133 页
回复总数  2641
1 ... 71  72  73  74  75  76  77  78  79  80 ... 133  
2020-04-29 09:20:49 +08:00
回复了 yuanse 创建的主题 问与答 Python 是哪种类型语言
随手一搜到处都是
为什么说 Python 是强类型语言? - 知乎 - https://www.zhihu.com/question/43498005
2020-04-26 22:14:40 +08:00
回复了 yinuxy 创建的主题 Python Python 打包成应用程序
chromedriver 把文件目录那套搞明白就没什么了吧... 有什么区别么

看到后半句...
2020-04-26 17:09:13 +08:00
回复了 zhang14964 创建的主题 程序员 怎么看待工作量化
如果有一个算法能识别各种语言代码的信息熵就好了, 至少比某某大公司平均每人每年多少行代码要有用的多...
2020-04-26 10:35:06 +08:00
回复了 Flash1 创建的主题 Python win10 运行 pyw 文件后,怎么打开控制台窗口查看输出
![Snipaste_2020-04-26_10-33-25.png]( https://i.loli.net/2020/04/26/lyedTbNh12FRK8D.png)
2020-04-26 10:03:23 +08:00
回复了 FreshOldMan 创建的主题 问与答 有没有一个 app 闹钟可以直接设定每个工作日的闹钟的
以前用的小米的闹钟, 选的工作日, 然后... 周六上班没响.........
2020-04-26 00:23:11 +08:00
回复了 duality 创建的主题 问与答 求适合和父母吃饭时候一起看的视频/电影/纪录片
囧妈刚出的时候, 用电视看的, 结果我妈每首歌都会唱, 我爹看的快睡着了...
2020-04-25 12:36:12 +08:00
回复了 Flash1 创建的主题 Python win10 运行 pyw 文件后,怎么打开控制台窗口查看输出
别双击, 在命令行里 python xxx.pyw 就行了吧...
不提 NFA DFA 什么的... 你这复杂度明显还是看自己表达式写的问题吧, 有些语法复杂度确实格外大开销就大...

至于要做 2500 次正则, 这需求层面没有可以优化的了么, 如果是匹配关键词走 AC 自动机更快点; 如果是匹配 url 可以先按 host 做好 map; 其他需求也有其他的解耦

至于前面的说提前 compile, 之前倒是看到 Python 的 re 是有缓存的, 是否预编译差距不该这么大, 打上 log 看看是不是查库那边的 IO 开销
2020-04-24 19:57:26 +08:00
回复了 ClericPy 创建的主题 问与答 微软 To Do 导入 todoist 的功能是下线了么
@wangzp0303 #1 你说的是 wunderlist
2020-04-24 16:54:21 +08:00
回复了 zhuwd 创建的主题 程序员 V 友们有没有防止灰产爬虫的方法?
反爬虫就像 CSGO 的反作弊, 只要是免费的, 就有一群人本着 "学习" 的目的来尝试, 每次进游戏看到一群小号就烦
2020-04-24 15:04:09 +08:00
回复了 PlanZ 创建的主题 推广 GeekHub 上线公测,欢迎来玩。第一波活动送出两个 AirPods 2 ...
如果整个网站在 Q 外就好了... 有些人还是隔离起来比较放心, 来逛 V2 很大程度也是这里曾经也是净土
2020-04-24 09:59:36 +08:00
回复了 ByteCat 创建的主题 Python Python 爬虫如何爬取动态网页数据?
@uti6770werty #15

几个问题简单回答下:

1. 代理池可以考虑使用 pacfile 的方式 "--proxy-pac-url", 但是 pac 模式不支持 Headless, 所以这个不可取; Chrome 本身不是为爬虫准备的, 所以挂代理这方面想动态的话, 我这边用的有两种方案: 一种是在 upstream 网关那层做负载均衡来不断变换动态 IP(比如用稍微专业点的代理工具, 当时用的 cow 忘了带不带这功能了) 使所有请求挂同一个代理, 该代理则负责负载均衡

2. cdp 起一个守护进程就可以了, 也就是在执行 Chrome 的时候带上 "--remote-debugging-port" 参数, 它内部就启动了一个 http/ws 服务方便调试, 挂代理也就是 "--proxy-server" 这个参数负责, 每个代理启动一个进程其实开销不算太大, 注意下同一个 host 只能建立 6 个连接那个点就好了

3. 想只启动一个 chrome 实例, 用 IP 池轮询的话, 目前没有原生的实现, 要么借助 chrome 扩展, 要么像 1 里说的挂一个动态代理. 如果找到更好的方法, 求告知...

至于 E 文不太好... 其实你看不懂的英文很大几率是写英文的那人语法不行, 一般好的文档单词都是言简意赅的...

可以参考下 [深入浅出 CDP (Chrome DevTools Protocol) - Clericpy's Blog]( https://clericpy.github.io/blog/posts/20200114151137/)
2020-04-23 21:26:28 +08:00
回复了 fangwenxue 创建的主题 问与答 requests header cookie
@fangwenxue #3 怀疑是服务端不认啊...

用 httpbin 写的最小测试代码

```python
# -*- coding: utf-8 -*-

import requests

r = requests.get('http://httpbin.org/get', cookies={'abc': '1'})
print(r.json())
# {'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Cookie': 'abc=1', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.23.0', 'X-Amzn-Trace-Id': 'Root=1-5ea196fd-2ad50b072b6c252274cf4b3c'}, 'origin': '119.181.173.152', 'url': 'http://httpbin.org/get'}
r = requests.get('http://httpbin.org/get', headers={'Cookie': 'abc=1'})
print(r.json())
# {'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Cookie': 'abc=1', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.23.0', 'X-Amzn-Trace-Id': 'Root=1-5ea19718-fd0b6b6acd989d0e3af1604a'}, 'origin': '119.181.173.152', 'url': 'http://httpbin.org/get'}
```
2020-04-23 20:53:50 +08:00
回复了 fangwenxue 创建的主题 问与答 requests header cookie
代码这是删了很多关键东西啊...

把最小测试代码发上来不好么, 反正有 httpbin

就目前所看到的来说, 我正常使用不会用 setdefault, 而是直接 kwargs['headers'] = self.headers

毕竟我也不知道你的 kwargs 是哪儿创建的
2020-04-23 20:31:26 +08:00
回复了 ByteCat 创建的主题 Python Python 爬虫如何爬取动态网页数据?
@uti6770werty #13 cdp 就是官方提供了一套 API 协议, 可以遵循它的方式 (HTTP / Websocket) 通过 debug port 调试通过调试模式启动的 Blink 内核的浏览器 (Chrome chronium 什么的), 调试的权限基本都集中在平时咱们用的 Devtools 里面那些

你这么理解不算偏, 其实就是给用户开放了个接口控制 Devtools, 熟悉 JS 的话更方便一些, 有时候我还朝 tab 里注入 jQuery vue.js 什么的乱七八糟的.

CDP 文档: https://chromedevtools.github.io/devtools-protocol/

看一眼文档就大致知道了, https://github.com/ClericPy/ichrome 之前自己摸索的时候也写成了代码, 可以稍微看一下 Tab 的部分就明白了, 建立 Devtools 的 ws, 对它 send 指令或者 recv 事件或消息. 实际使用时候最操心的反而是并发控制和僵尸进程的问题更多一点...
2020-04-23 19:49:46 +08:00
回复了 JCZ2MkKb5S8ZX9pq 创建的主题 问与答 Windows 有快速息屏的快捷键吗?
以前用的 autohotkey 写的 lock, 鼠标一动就得输入密码, 不输入就继续黑屏. 忘了密码就 ctrl alt del 找到那个 exe 杀死就行了... 后来感觉没什么用就没继续用下去... 因为笔记本合上盖子我这默认就是无操作... 至于合上盖子用独立显示器... 直接用手关显示器.........
2020-04-23 16:17:16 +08:00
回复了 toboy 创建的主题 问与答 中年男人的心态,你对了几条?? zz
这标题... 有内味了
2020-04-23 15:40:02 +08:00
回复了 ByteCat 创建的主题 Python Python 爬虫如何爬取动态网页数据?
一般浏览器打开 Devtools 抓包就够了吧...

至于现在很多人推 Selenium 是因为他们看的教程只提到了这个, 实际上多数情况用 Google 原生的 cdp (HTTP+Websocket) 就够了, Puppeteer 有个 Python 版叫 pyppeteer 就是操作 cdp 的, 功能和 selenium 比只局限在 Devtools 层面, 但是有 js 已经足够了, 平时爬虫来说根本用不到 selenium 更底层的 driver 层面接口

当然, 更无脑的用法也可以 --dump-dom, 反正我是习惯 cdp 了, 自己把接口写写套上就能用
2020-04-23 15:03:01 +08:00
回复了 akbuger 创建的主题 问与答 身体问题,请教一下
听着像痛风的那个结晶, 但那个疼痛程度强的多, 有的关节炎风湿病什么的也有类似症状, 要不去虎扑或者贴吧问问, 那边人更多

有病不去医院是怕扁鹊三连么.......
2020-04-22 19:12:54 +08:00
回复了 jin7 创建的主题 Python Python 协程, 我这样写有没有问题, 通过字符串调用函数
上面口误, 看了下代码好像是责任链... 溜了散步去了
1 ... 71  72  73  74  75  76  77  78  79  80 ... 133  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2286 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 14:25 · PVG 22:25 · LAX 07:25 · JFK 10:25
Developed with CodeLauncher
♥ Do have faith in what you're doing.