请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Crossin的编程教室

微信公众号:
crossincode
 找回密码
 立即加入
查看: 984|回复: 6

遇到一个selenium都解决不了的问题哎,想问一下crossin先生

[复制链接]

2

主题

0

好友

34

积分

新手上路

Rank: 1

发表于 2018-10-26 00:09:24 |显示全部楼层
找免费代理的时候找到了一个更新很快的网站(国外的需要科学上网)
https://hidemyna.me/en/proxy-list/
但是我抓包找不到数据
然后用selenium试了一下
得到的page_source跟抓包的是一样的
我发现它进入网站前有一个检测浏览器 然后跳转的动作 不知道是不是这里卡到的(附件图)
我试过进入之后 sleep了10秒再reflesh,不过还是不行。
crossin先生有过见过这样的情况吗?


微信图片_20181026000515.png
回复

使用道具 举报

158

主题

37

好友

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-10-26 00:50:56 |显示全部楼层
这里不会自动跳过去吗?如果一直卡这里,那的确没办法抓到。肯定对方做了很严格的检测

这个一时看不出问题
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

发表于 2018-10-26 01:12:01 |显示全部楼层
crossin先生 发表于 2018-10-26 00:50
这里不会自动跳过去吗?如果一直卡这里,那的确没办法抓到。肯定对方做了很严格的检测

这个一时看不出问题 ...

会调过去的,但是跳过去之后的page_source不是检查元素里面的内容
回复

使用道具 举报

158

主题

37

好友

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-10-26 19:51:59 |显示全部楼层
JasonYeung 发表于 2018-10-26 01:12
会调过去的,但是跳过去之后的page_source不是检查元素里面的内容

那就奇怪了。那你看看是不是有 iframe ,包含在另一个网页中
一般来说如果网页已经切过去了,那应该能拿到的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

发表于 2018-10-27 22:17:23 |显示全部楼层
crossin先生 发表于 2018-10-26 19:51
那就奇怪了。那你看看是不是有 iframe ,包含在另一个网页中
一般来说如果网页已经切过去了,那应该能拿 ...

搞不懂..我有找到了其他三个的国外代理网站
想请问一下,crossin先生你的服务器上IP池里的存活IP量一般时多少? 我这里徘徊在100左右
扫了3个国内的网站(就是你的项目里的3个)。还有我找的3个国外的代理网站(100分钟刷一次,更新比较快)

还有一个问题 就是我在一个文件里开了10个线程,然后如果某个线程执行了exit()函数的话,是整个程序会结束还是这个线程会结束?
就是这样启动的
if __name__ =='__main__':
    threading.Thread(target=start_get_region).start()
    threading.Thread(target=start_get_region).start()
    threading.Thread(target=start_get_region).start()
    threading.Thread(target=start_get_region).start()
我在start_get_region()函数里执行while True,然后里面有一个弹出redis队列里的url的操作,
然后如果弹出为空就是判断爬完了队列里所有url,然后断开数据库,执行exit(),否则会继续循环
但是我有一个顾虑,就是这个exit是终止程序还是线程,因为如果是结束程序的话,可能当一个线程遇到了最后一个url的下一个弹出操作,就是空的那个,执行了exit(),但是可能执行最后几个个url的线程可能还没到写入数据库的步骤,那这几个线程的数据不就丢失了么?
回复

使用道具 举报

158

主题

37

好友

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-10-28 12:54:09 |显示全部楼层
JasonYeung 发表于 2018-10-27 22:17
搞不懂..我有找到了其他三个的国外代理网站
想请问一下,crossin先生你的服务器上IP池里的存活IP量一般时 ...

我的系统上是退出子线程,但我不确定你的系统里是不是,你可以自己写个简单代码验证下

免费代理IP的可用量通常是相当低的,我们之前是抓了几万个,一般也只有几十个可用,还得不停更新
所以如果自己随便用用也够了,如果要优化一下,定时验证机制是要再设计一下的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

发表于 2018-10-28 21:54:22 |显示全部楼层
crossin先生 发表于 2018-10-28 12:54
我的系统上是退出子线程,但我不确定你的系统里是不是,你可以自己写个简单代码验证下

免费代理IP的可用 ...

好的 我今天试了一下 在exit之前打印一条信息,然后发现信息输出后还有其他线程的执行信息,所以说是退出线程的了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|Archiver|手机版|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2020-10-1 12:08 , Processed in 0.056941 second(s), 27 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部