lsekfe 发表于 2019-12-2 13:45:59

【你来问我来答第109期】:python爬虫的魔力 !(已结束)


       随着信息时代的发展,数据的重要性越来越凸显。爬虫就是获取数据最高效,性价比最高的方法。互联网公司也越来越重视爬虫,而爬虫工程师的待遇也越来越高。起薪基本都在一万以上。爬虫是一种对知识广度要求很高的技术,既要懂基本的开发语言,又要熟悉网站知识,还要熟悉各种数据库存储。 老师有超过十年的开发经验,其中爬虫领域有超过八年的经验,对这个行业非常精通,算得上这个领域的专家,用各种语言(Python,Java,PHP)开发过爬虫,还自己开发了几套爬虫框架。对搜索和网站开发也很擅长。
论坛ID:JohnnySheng
现任职位:爬虫技术负责人/架构师
嘉宾作品:大神教你写爬虫-从入门到精通
项目经验:知名上市公司的爬虫架构师,曾在数家公司担任数据负责人和爬虫架构师的职责。超过十年开发经验,精通爬虫,搜索,网站开发领域,开发语言精通Python,Java,PHP。曾经用不同开发语言写过几个爬虫框架。课程中基础和高级应用并重,由浅入深,有多个项目实例,有多种开发语言(Python,Java,PHP)框架的讲解和实战演示。
http://bbs.51testing.com/data/attachment/forum/month_1112/11120109519a27fc08591f92eb.gif
各位会员可以在12月10日前以回帖的方式向客座专家提问。
(请大家围绕本期客座专家的擅长领域进行提问、探讨)
客座专家将在12月11日—12月31日为大家集中解答。
机会难得,欢迎大家踊跃提问!

lsekfe 发表于 2019-12-2 14:17:10

欢迎大家提问,本期关于python爬虫的主题问答。希望大家踊跃提问。

交感2019 发表于 2019-12-2 18:22:36

老师请问,有许多爬虫现在在窃取个人信息,国家也在出台相关法律。爬虫技术有没有什么重要的法律红线?

JohnnySheng 发表于 2019-12-2 20:39:11

交感2019 发表于 2019-12-2 18:22
老师请问,有许多爬虫现在在窃取个人信息,国家也在出台相关法律。爬虫技术有没有什么重要的法律红线?

你这是个好问题,最近爬虫行业各种动荡,但是大家大可不必担忧,受到打击的只是不合规的那些,主要是涉及到个人信息方面的。
爬虫只是一种工具,搜索引擎的底层就是爬虫和搜索,所以爬虫不是违法的,主要看怎么用。
一个很重要的注意点,就是不要涉及个人信息,还有规避有明确版权的数据。
详情可以看我的课程,在爬虫基本概念和就业指导章节我都着重进行了讲解,我的个人博客中也进行了讲解。
课程:http://www.atstudy.com/my/course/1999
博客:对于最近爬虫行业一些动荡事件的思考,http://www.crawler.im/post/18

目标,远方 发表于 2019-12-3 13:50:12

老师,请问,可以推荐一下,爬虫的基础框架不,在自学。感觉很多时候,找不到方向。

JohnnySheng 发表于 2019-12-4 11:03:01

目标,远方 发表于 2019-12-3 13:50
老师,请问,可以推荐一下,爬虫的基础框架不,在自学。感觉很多时候,找不到方向。

#框架:
PHP:
PHPSpider:强大极其灵活,配置形式,基本上可以用配置解决所有问题

.NET:
DotnetSpider:参照WebMagic,强大,灵活

Python:
Scrapy:元老级别,强大,周边插件强大,应用广。但是也有不足(单进程只能运行单个爬虫任务),常用的的redis插件有缺陷
PySpider:玩具,适合非专业爬虫人员,不稳定

Java:
Nutch:元老级,适合搜索引擎,比较繁重,可定制化不强,不推荐
WebMagic:参照Scrapy,但是青出于蓝而胜于蓝。强大,灵活,原生支持分布式,自带的redis队列很不错,可以实现单进程多任务,强烈推荐!!!!!
Crawler4j:不错的框架,采用的是BerkeleyDB 进行url的过滤。不支持分布式采集,但是可以通过使用redis队列实现分布式,但是开源的redis队列有缺陷,慎用!
WebCollector:国人开发,功能不错,但是不同版本兼容性不好,可修改空间不大

这些在老师的课程中都有详细的讲解和案例:http://www.atstudy.com/my/course/1999

目标,远方 发表于 2019-12-5 14:33:16

JohnnySheng 发表于 2019-12-4 11:03
#框架:
PHP:
PHPSpider:强大极其灵活,配置形式,基本上可以用配置解决所有问题


感谢,老师回复

目标,远方 发表于 2019-12-5 14:33:26

JohnnySheng 发表于 2019-12-4 11:03
#框架:
PHP:
PHPSpider:强大极其灵活,配置形式,基本上可以用配置解决所有问题


感谢,老师回复

df_1989 发表于 2019-12-13 16:56:40

老师,我想提问下,python爬虫可以用.net的界面来交互吗?

star78 发表于 2019-12-13 17:04:23

JohnnySheng 发表于 2019-12-2 20:39
你这是个好问题,最近爬虫行业各种动荡,但是大家大可不必担忧,受到打击的只是不合规的那些,主要是涉及 ...

求指教!! 爬取天眼查数据的时候,脚本运行一段时间,就会被天眼查的反爬取搞出来。怎么能躲过这个检测爬虫脚本执行一段时间以后,后续就会报错。
手动访问天眼查页面,发现页面提示确认是否是机器人。请大神指导怎么能躲过反爬取检测。

问题:
目前不太清楚天眼查是根据IP,还是根据cookie来做的反爬取限制。
尝试过的操作:
1、延长每次请求的时间,设置为3s中爬取一次,结果中途也断了。
2、将请求的时间设置为随机时间在0~5s之内,结果也中途断了。




star78 发表于 2019-12-13 17:09:05

r = s.get(city_url, headers=my_heads, proxies=params_file.proxies)增加了IP地址池,IP地址数据如下(购买的IP数据):
proxies = {
"https":"https://112.87.71.162:9999",
"https":"https://125.123.139.163:9999",
"https":"https://116.209.55.229:9999",
"https":"https://104.248.99.101:3128",
"https":"https://116.209.52.240:9999",
"https":"https://116.192.171.51:31742",
"https":"https://113.121.146.70:9999",
"https": "https://112.85.129.166:9999",
"https": "https://1.10.188.100:59164",
}结果页面有报错:接口返回值为403

目前陷入了停滞状态,我尝试过去掉地址池,页面访问正常
所以有点尴尬,去掉地址池,爬一段时间,就要被封。用了地址池,程序跑不起来

hreader 信息:


新的问题。
使用IP代理之后,发现爬一段时间,账号依然会被封。不知道什么原因?
是因为一直使用一个cookie吗?这么搞的话,是不是得使用多个账号交替去爬?

JohnnySheng 发表于 2019-12-16 14:15:02

df_1989 发表于 2019-12-13 16:56
老师,我想提问下,python爬虫可以用.net的界面来交互吗?

可以的,通过http接口或者数据库或者配置文件,然后爬虫中读取数据库或者配置

JohnnySheng 发表于 2019-12-16 14:16:43

star78 发表于 2019-12-13 17:09
增加了IP地址池,IP地址数据如下(购买的IP数据):
结果页面有报错:接口返回值为403



Cookie要经常更换,一般多线程多账号,代理也有时效性,还有就是你的代理数量比较少,一般都是几百的级别

JohnnySheng 发表于 2019-12-16 14:18:58

star78 发表于 2019-12-13 17:04
求指教!! 爬取天眼查数据的时候,脚本运行一段时间,就会被天眼查的反爬取搞出来。怎么能躲过这个检测 ...

一般是多种策略,检测ip,检测cookie,检测时间间隔,所以要有有效的代理池,并且经常更换的,还有就是单个线程的时间间隔控制好,cookie也不要一直用一个,经常更换或者动态生成。

star78 发表于 2019-12-16 15:41:11

JohnnySheng 发表于 2019-12-16 14:16
Cookie要经常更换,一般多线程多账号,代理也有时效性,还有就是你的代理数量比较少,一般都是几百的级别

感谢您的回复,虽然还不是太明白。不过至少有一些头绪了。

df_1989 发表于 2019-12-16 15:43:17

JohnnySheng 发表于 2019-12-16 14:15
可以的,通过http接口或者数据库或者配置文件,然后爬虫中读取数据库或者配置

好的 谢谢老师。请问下您这边有相关的资料吗?

monkeytest15 发表于 2019-12-16 16:00:23

在编写静态网页爬虫,检查元素时发现在标签里面href所指的链接不全怎么办
实际的网页url时这样的http://www.mof.gov.cn/xinwenlianbo/shanxicaizhengxinxilianbo/201901/t20190128_3134160.htm
但是在网页上是这样的《a href = ../../xinwenlianbo/shanxicaizhengxinxilianbo/201901/t20190128_3134160.htm》 ABCD 《a》
里面为什么会出现那两个杠杠和点点呀?要怎么补全呢?有很多的链接都是这个样子,出现了杠杠和点点,前面的部分还不太一样,这种情况要怎么处理呢?求指教!
上面是尖括号,因为尖括号敲上去之后不显示标签对里面的信息,不得已改成了书名号=。=

小小云 发表于 2019-12-16 16:05:23

领导说要做个爬虫来获取信息,要求给的很笼统,主要就是获取最新及时不定向的数据,并且还是动态的,这个需求我改怎么做?请帮忙解答下,谢谢~

HZ53富华钢 发表于 2019-12-16 17:28:29

monkeytest15 发表于 2019-12-16 16:00
在编写静态网页爬虫,检查元素时发现在标签里面href所指的链接不全怎么办
实际的网页url时这样的http://ww ...

../是父级目录的意思吧

寻知觅音 发表于 2019-12-17 10:11:52

你好,想问下写爬虫是用多进程好?还是多线程好? 为什么?
页: [1] 2 3
查看完整版本: 【你来问我来答第109期】:python爬虫的魔力 !(已结束)