VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • python爬虫实战以及数据可视化(2)

 

 

 

 

主要代码展示:

第一部分:拉取数据。

 (1)使用session保存cokkies信息。

self.lagou_session = requests.session()

  (2)写一个request方法;用于请求数据。使用多线程,以及代理的方式来;否则会记录恶意IP,不能爬虫。

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
def handle_request(self,method,url,data=None,info=None):
    while True:
        #加入阿布云的动态代理
        proxyinfo = "http://%s:%s@%s:%s" % ('H1V32R6470A7G90D''CD217C660A9143C3''http-dyn.abuyun.com''9020')
        proxy = {
            "http":proxyinfo,
            "https":proxyinfo
        }
        try:
            if method == "GET":
                # response = self.lagou_session.get(url=url,headers=self.header,proxies=proxy,timeout=6)
                response = self.lagou_session.get(url=url,headers=self.header,timeout=6)
            elif method == "POST":
                # response = self.lagou_session.post(url=url,headers=self.header,data=data,proxies=proxy,timeout=6)
                 response = self.lagou_session.post(url=url,headers=self.header,data=data,timeout=6)
        except:
            # 需要先清除cookies信息
            self.lagou_session.cookies.clear()
            # 重新获取cookies信息
            first_request_url = "https://www.lagou.com/jobs/list_python?city=%s&cl=false&fromSearch=true&labelWords=&suginput=" % info
            self.handle_request(method="GET", url=first_request_url)
            time.sleep(10)
            continue
        response.encoding = 'utf-8'
        if '频繁' in response.text:
            print(response.text)
            #需要先清除cookies信息
            self.lagou_session.cookies.clear()
            # 重新获取cookies信息
            first_request_url = "https://www.lagou.com/jobs/list_python?city=%s&cl=false&fromSearch=true&labelWords=&suginput="%info
            self.handle_request(method="GET",url=first_request_url)
            time.sleep(10)
            continue
        return response.text

相关教程