python应用:selenium之爬取天眼查信息

inform_table.py

  1 # -*-coding:utf8-*-
  2
  3 from selenium import webdriver
  4 from selenium.webdriver.common.proxy import Proxy
  5 from selenium.webdriver.common.proxy import ProxyType
  6 import time
  7 from bs4 import BeautifulSoup
  8
  9
 10 class InformTable:
 11     def __init__(self):
 12         self.proxy = Proxy({‘proxyType‘: ProxyType.MANUAL, ‘httpProxy‘: ‘115.153.15.128:45491‘})
 13         self.browser = webdriver.Firefox(proxy=self.proxy)
 14         self.url = ‘https://www.tianyancha.com/‘
 15         self.user = ‘17862977887‘
 16         self.pwd = ‘oookkk09‘
 17         self.isFirstSearch = True
 18         self.company = ‘‘
 19
 20         self.url_dic = {‘New_Message‘: ‘/html/body/div[1]/div/span‘,
 21                         ‘New_submit‘: ‘/html/body/div[1]/div/i‘,
 22                         ‘Advertisement‘: ‘//*[@id="tyc_banner_close"]‘,
 23                         ‘get_login‘: ‘/html/body/div[1]/div/div[1]/div[1]/div/div/div[2]/div/div[4]/a‘,
 24                         ‘login_user_pwd‘: ‘/html/body/div[6]/div[2]/div/div[2]/div/div/div[3]/div[1]/div[2]‘,
 25                         ‘login_user‘: ‘/html/body/div[6]/div[2]/div/div[2]/div/div/div[3]/div[2]/div[2]/input‘,
 26                         ‘login_pwd‘: ‘/html/body/div[6]/div[2]/div/div[2]/div/div/div[3]/div[2]/div[3]/input‘,
 27                         ‘login_submit‘: ‘/html/body/div[6]/div[2]/div/div[2]/div/div/div[3]/div[2]/div[5]‘,
 28                         ‘login_state‘: ‘/html/body/div[1]/div/div[1]/div[1]/div/div/div[2]/div/div[4]/a‘,
 29                         ‘first_search_text‘: ‘//*[@id="home-main-search"]‘,
 30                         ‘first_search_submit‘: ‘/html/body/div[1]/div/div[1]/div[2]/div/div/div[2]/div[2]/div[1]/div‘,
 31                         ‘second_search_text‘: ‘//*[@id="header-company-search"]‘,
 32                         ‘second_search_submit‘: ‘/html/body/div[1]/div/div[2]/div/div[2]/div[1]/div‘,
 33                         ‘company_name‘: ‘/html/body/div[2]/div/div[1]/div/div[3]/div[1]/div/div[3]/div[1]/a/em‘,
 34                         ‘company_history_name‘: ‘/html/body/div[2]/div/div[1]/div/div[3]/div[1]/div/div[3]/div[4]/span[2]/em‘,
 35                         ‘company_url‘: ‘/html/body/div[2]/div/div[1]/div/div[3]/div[1]/div/div[3]/div[1]/a‘,
 36                         ‘holding_url‘: ‘/html/body/div[2]/div[1]/div/div[3]/div[1]/div/div[2]/div[1]/div[5]/div[2]‘,
 37                         ‘holding_name‘: ‘/html/body/div[2]/div[1]/div/div[3]/div[1]/div/div[2]/div[1]/div[5]/div[1]‘,
 38                         ‘financing_url‘: ‘/html/body/div[2]/div/div[2]/div[1]/div/div[2]/div[5]/div[2]/div‘,
 39                         ‘financing_name‘: ‘/html/body/div[2]/div/div[2]/div[1]/div/div[2]/div[5]/div[1]/span[1]‘,
 40                         ‘project_url‘: ‘/html/body/div[2]/div/div[2]/div[1]/div/div[2]/div[6]/div[2]/div‘,
 41                         ‘project_name‘: ‘/html/body/div[2]/div/div[2]/div[1]/div/div[2]/div[6]/div[1]/span[1]‘,
 42                         ‘2_to_3‘: ‘/html/body/div[2]/div[1]/div/div[2]/div[1]/div[2]/div[3]/div[4]/div[1]‘}
 43         self.js = {‘page_state‘: ‘return document.readyState‘}
 44
 45     # 关闭新消息提醒
 46     def has_new(self):
 47         try:
 48             if u‘新的动态‘ in self.browser.find_element_by_xpath(self.url_dic[‘New_Message‘]).text:
 49                 self.browser.find_element_by_xpath(self.url_dic[‘New_submit‘]).click()
 50                 self.browser.back()
 51         except Exception:
 52             pass
 53
 54     # 关闭底部风险提示
 55     def advertisement(self):
 56         try:
 57             self.browser.find_element_by_xpath(self.url_dic[‘Advertisement‘]).click()
 58         except Exception:
 59             pass
 60
 61     # 等待页面加载完成
 62     def complete(self):
 63         while self.browser.execute_script(self.js[‘page_state‘]) != ‘complete‘:
 64             time.sleep(0.001)
 65
 66     # 验证登录状态
 67     def login_success(self):
 68         try:
 69             while u‘登录‘ in self.browser.find_element_by_xpath(self.url_dic[‘login_state‘]).text:
 70                 time.sleep(0.5)
 71         except Exception:
 72             pass
 73
 74     # 用户登录
 75     def login(self):
 76         # 访问网址
 77         self.browser.get(self.url)
 78         self.complete()
 79         # 弹出登录界面
 80         self.browser.find_elements_by_xpath(self.url_dic[‘get_login‘])[0].click()
 81         # 选择登录方式并登录
 82         while True:
 83             try:
 84                 self.browser.find_element_by_xpath(self.url_dic[‘login_user_pwd‘]).click()
 85                 break
 86             except Exception:
 87                 time.sleep(1)
 88         self.browser.find_element_by_xpath(self.url_dic[‘login_user‘]).send_keys(self.user)
 89         self.browser.find_element_by_xpath(self.url_dic[‘login_pwd‘]).send_keys(self.pwd)
 90         self.browser.find_element_by_xpath(self.url_dic[‘login_submit‘]).click()
 91         # 验证登录状态
 92         print ‘正在登录……‘
 93         self.login_success()
 94         # 确保登录成功
 95         time.sleep(30)
 96         # 除去新消息
 97         self.has_new()
 98
 99     # 搜索企业
100     def search_company(self, company):
101         self.advertisement()
102         # 判断是否为第一次搜索
103         if self.isFirstSearch:
104             self.browser.find_element_by_xpath(self.url_dic[‘first_search_text‘]).clear()
105             self.browser.find_element_by_xpath(self.url_dic[‘first_search_text‘]).send_keys(company.decode(‘utf8‘))
106             self.browser.find_elements_by_xpath(self.url_dic[‘first_search_submit‘])[0].click()
107             self.complete()
108         else:
109             # 关闭多余的窗口
110             while len(self.browser.window_handles) > 1:
111                 self.browser.switch_to.window(self.browser.window_handles[-1])
112                 self.browser.close()
113             # 定位到搜索窗口
114             self.browser.switch_to.window(self.browser.window_handles[-1])
115             # 搜索
116             self.browser.find_element_by_xpath(self.url_dic[‘second_search_text‘]).clear()
117             self.browser.find_element_by_xpath(self.url_dic[‘second_search_text‘]).send_keys(company.decode(‘utf8‘))
118             self.browser.find_element_by_xpath(self.url_dic[‘second_search_submit‘]).click()
119             self.complete()
120
121         # 判断符合条件的第一条搜索结果
122         if self.browser.find_element_by_xpath(self.url_dic[‘company_name‘]).text == company.decode(‘utf8‘):
123             self.browser.find_element_by_xpath(self.url_dic[‘company_url‘]).click()
124             # 切换到新页面
125             while ‘company‘ not in self.browser.current_url:
126                 self.browser.switch_to.window(self.browser.window_handles[-1])
127                 self.complete()
128                 time.sleep(0.5)
129             return ‘success‘
130         else:
131             self.advertisement()
132             try:
133                 if self.browser.find_element_by_xpath(self.url_dic[‘company_history_name‘]).text == company.decode(‘utf8‘):
134                     self.browser.find_element_by_xpath(self.url_dic[‘company_url‘]).click()
135                     # 切换到新页面
136                     while ‘company‘ not in self.browser.current_url:
137                         self.browser.switch_to.window(self.browser.window_handles[-1])
138                         self.complete()
139                         time.sleep(0.5)
140                     return ‘success‘
141                 else:
142                     return ‘fail‘
143             except Exception:
144                 return ‘fail‘
145
146     # 获取某属性多页面信息
147     def rest_information(self, array, inform_url):
148         elements_num = len(self.browser.find_elements_by_xpath(inform_url + ‘/div/ul/li‘))
149         for i in range(0, elements_num - 1):
150             # 去除底部广告
151             self.advertisement()
152             time.sleep(1)
153             # 进入下一页
154             self.browser.find_element_by_xpath(inform_url + ‘/div/ul/li[‘+str(elements_num)+‘]/a‘).click()
155             self.complete()
156             time.sleep(2)
157             # 判断是否刷新页面并添加内容
158             old_start_id = BeautifulSoup(array[-1], ‘html.parser‘).find(‘tbody‘).find(‘tr‘).find(‘td‘).text
159             for c in range(5):
160                 new_page = self.browser.find_element_by_xpath(inform_url + ‘/table‘).get_attribute(‘innerHTML‘)
161                 new_start_id = BeautifulSoup(new_page, ‘html.parser‘).find(‘tbody‘).find(‘tr‘).find(‘td‘).text
162                 if new_start_id == old_start_id:
163                     time.sleep(3)
164                 else:
165                     array.append(new_page)
166                     break
167
168         # 如果属性页面数量不对,则重新查找
169         while elements_num != 0 and len(array) != elements_num - 1:
170             print elements_num, len(array)
171             time.sleep(5)
172             self.search_main(self.company)
173
174     # 获得详细信息
175     def get_information(self):
176         # 获取参股控股信息
177         holding_table = []
178         try:
179             if u‘参股控股‘ in self.browser.find_element_by_xpath(self.url_dic[‘holding_name‘]).text:
180                 holding_table.append(self.browser.find_element_by_xpath(self.url_dic[‘holding_url‘]+‘/table‘)
181                                      .get_attribute(‘innerHTML‘))
182                 self.rest_information(holding_table, self.url_dic[‘holding_url‘])
183         except Exception:
184             pass
185
186         # 页面跳转(查询5次,每次未查询到等待2秒,查询不到则认为不存在)
187         times = 0
188         for i in range(5):
189             try:
190                 self.browser.find_element_by_xpath(self.url_dic[‘2_to_3‘]).click()
191                 break
192             except Exception:
193                 time.sleep(2)
194                 times += 1
195                 print ‘times:‘ + str(times)
196         if times < 5:
197             self.browser.switch_to.window(self.browser.window_handles[-1])
198             self.complete()
199
200             # 获取融资历程信息
201             financing_table = []
202             try:
203                 if u‘融资历程‘ in self.browser.find_element_by_xpath(self.url_dic[‘financing_name‘]).text:
204                     financing_table.append(self.browser.find_element_by_xpath(self.url_dic[‘financing_url‘]+‘/table‘)
205                                            .get_attribute(‘innerHTML‘))
206                     self.rest_information(financing_table, self.url_dic[‘financing_url‘])
207             except Exception:
208                 pass
209
210             # 获取竞品推荐信息
211             project_table = []
212             try:
213                 if u‘竞品推荐‘ in self.browser.find_element_by_xpath(self.url_dic[‘project_name‘]).text:
214                     project_table.append(self.browser.find_element_by_xpath(self.url_dic[‘project_url‘]+‘/table‘)
215                                          .get_attribute(‘innerHTML‘))
216                     self.rest_information(project_table, self.url_dic[‘project_url‘])
217             except Exception:
218                 pass
219
220             return holding_table, financing_table, project_table
221         else:
222             return holding_table, [], []
223
224     # 提取信息总过程
225     def search_main(self, company):
226         self.company = company
227         company_exists = self.search_company(company)
228         self.isFirstSearch = False
229         if company_exists == ‘success‘:
230             print ‘success to search the company‘
231             return self.get_information()
232         else:
233             return ‘fail to search the company‘
234
235     # 关闭浏览器
236     def exit_driver(self):
237         self.browser.quit()
238
239
240 if __name__ == ‘__main__‘:
241     work = InformTable()
242     work.login()
243     work.search_main(‘北京超图软件股份有限公司‘)
244     work.search_main(‘北京超图软件股份有限公司‘)
245     work.exit_driver()

inform_data.py

 1 # -*-coding:utf8-*-
 2
 3 from bs4 import BeautifulSoup
 4 import urllib2
 5
 6
 7 class Analysis:
 8     def __init__(self, source, table):
 9         self.table = table
10         self.source = source
11         self.soup = BeautifulSoup(self.table, ‘html.parser‘)
12
13         self.user_agent = ‘Mozilla/5.0 (Windows NT 6.1; WOW64; rv:62.0) Gecko/20100101 Firefox/62.0‘  # 请求头属性(模拟浏览器访问)
14         self.headers = {‘User-Agent‘: self.user_agent}
15         self.full_name_url = ‘#web-content .container.pt25 .container.brand-header-block #project_web_top .content .header a‘
16
17     def table_head(self):
18         head = []
19         for th in self.soup.findAll(‘th‘):
20             head.append(th.getText().encode(‘utf8‘))
21         return head
22
23     def full_name(self, url):
24         response = None
25         while response is None:
26             try:
27                 request = urllib2.Request(url, headers=self.headers)
28                 ‘‘‘
29                 response = urllib2.urlopen(request, timeout=2)
30                 ‘‘‘
31                 response = urllib2.build_opener(urllib2.ProxyHandler({‘https‘: ‘115.153.15.128‘})).open(request, timeout=2)
32             except Exception:
33                 pass
34         soup = BeautifulSoup(response, ‘html.parser‘)
35         return soup.select(self.full_name_url)[0].text
36
37     def table_body(self):
38         table_body = self.soup.find(‘tbody‘).findAll(‘tr‘)
39         body = []
40         if ‘financing‘ in self.source:
41             turn = 1
42         else:
43             turn = 2
44         for s in range(0, len(table_body), turn):
45             sub_soup = table_body[s].findAll(‘td‘)
46             sub_body = []
47             for j in range(len(sub_soup)):
48                 if j != 1 and j != 2:
49                     if ‘project‘ in self.source and (j == 3 or j == 7):
50                         if j == 3:
51                             try:
52                                 # print self.full_name(sub_soup[j].find(‘a‘).attrs[‘href‘]).encode(‘utf8‘)
53                                 sub_body.append(self.full_name(sub_soup[j].find(‘a‘).attrs[‘href‘]).encode(‘utf8‘))
54                             except Exception:
55                                 sub_body.append(sub_soup[j].getText().encode(‘utf8‘))
56                         if j == 7:
57                             sub_body.append(sub_soup[j].findAll(‘span‘)[1].text.encode(‘utf8‘))
58                     else:
59                         sub_body.append(sub_soup[j].getText().encode(‘utf8‘))
60                 body.append(sub_body)
61         return body
62
63
64 if __name__ == ‘__main__‘:
65     table = ‘<thead><tr><th class="sort-col">序号</th><th>产品名</th><th width="15%">融资信息</th><th width="15%">成立时间</th><th width="10%">所属地</th><th width="35%">产品介绍</th></tr></thead><tbody><tr><td>1</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="" alt="城际高科信息" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b7ce8258753" target="_blank">城际高科信息</a></td></tr></tbody></table></td><td>战略融资</td><td>2000-01-27</td><td>北京</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">2000年1月成立于北京市海淀区,是北京市高新技术企业,2003年通过了北京市双软认证。公司专注于车载移动信息终端的研发、生产和销售,并构建全国范围的信息服务平台、建设全国移动信息应用数据库;致力于成为中国空间地理信息领域技术开发、产品应用及信息服务的行业先锋。</span><span class="js-split-container" data-num="37" data-length="131">2000年1月成立于北京市海淀区,是北京市高新技术企业,2003年通过了北...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>2</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="金建" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/ba777299468" target="_blank">金建</a></td></tr></tbody></table></td><td>战略融资</td><td>1998-11-23</td><td>辽宁</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">沈阳金建数字城市软件有限公司(Shenyang Jinjian Digital City Software Ltd.)是致力于地理信息技术(GIS)的研发与应用,立足于东北、服务于全国的高科技软件企业。公司1998年成立至今,业务规模不断扩大,金建软件已广泛应用于城市规划,专业管网,土地管理、油田建设、勘察测绘、电力电信、公安及房地产等领域,为相关行业GIS的建设和发展做出了积极贡献。金建软件目前已成为东北地区乃至全国最具品牌价值的IT企业之一。</span><span class="js-split-container" data-num="37" data-length="225">沈阳金建数字城市软件有限公司(Shenyang Jinjian Digit...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>3</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="金维软件" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b558b300764" target="_blank">金维软件</a></td></tr></tbody></table></td><td>战略融资</td><td>1999-10-13</td><td>新疆</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">乌鲁木齐金维图文信息科技有限公司1999年由新疆地矿局“物化探计算中心”改制而成,是专业从事行业应用软件、地理信息系统(GIS)开发和空间数据库建设的高科技企业,是新疆维吾尔自治区认定的“高新技术企业、科技企业、软件企业”,是新疆软件行业协会、新疆计算机学会、新疆电子协会的执行副理事长单位,是新疆电子信息产业技术创新战略联盟理事单位。公司自创立以来,本着“基于应用,面向行业”的经营方针,在地矿、电力等多个领域为客户持续了提供高水准、高技术含量的应用方案。</span><span class="js-split-container" data-num="37" data-length="229">乌鲁木齐金维图文信息科技有限公司1999年由新疆地矿局“物化探计算中心”改...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>4</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="Enview" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/bcc19251235" target="_blank">Enview</a></td></tr></tbody></table></td><td>A轮</td><td>2015-02-02</td><td>加利福尼亚州/美国</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">Enview是一个地理空间影像服务商,Enview公司希望利用地理空间分析工具帮助石油天然气公司和公共事业机构来监视和管理他们的网络,继而更好、更快速的了解传输系统在哪里发生了故障,避免给人们的生命和财产造成损失。</span><span class="js-split-container" data-num="37" data-length="107">Enview是一个地理空间影像服务商,Enview公司希望利用地理空间分析...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>5</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="五珀云" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/bc1c5262956" target="_blank">五珀云</a></td></tr></tbody></table></td><td>天使轮</td><td>2016-06-21</td><td>上海</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">五珀云专注于GIS技术与企业应用、大众消费相结合领域,提供专业的地理时空大数据挖掘服务,我们为这个世界创造一个使用地图的新方式,为客户创造新的商业价值。通过地图资源管理、极致地理围栏(Geo-fencing)服务、实时场景智能感知服务、多渠道通知服务、足迹可视化服务、地理空间分析服务、地理网络拓扑服务、软硬件集成解决方案,解决用户各种基于空间和时间维度的行业应用需求。</span><span class="js-split-container" data-num="37" data-length="185">五珀云专注于GIS技术与企业应用、大众消费相结合领域,提供专业的地理时空大...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>6</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="" alt="极云地理" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b2899336763" target="_blank">极云地理</a></td></tr></tbody></table></td><td>天使轮</td><td>2017-04-01</td><td>浙江</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">浙江极云地理信息科技有限公司致力于成为国内专业的地理信息服务提供商。</span><span class="js-split-container" data-num="37" data-length="34">浙江极云地理信息科技有限公司致力于成为国内专业的地理信息服务提供商。</span><a style="cursor: pointer;" class="js-shrink-btn hidden  link-click">详情</a></span></td></tr><tr><td>7</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="WELTOP" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/bb143272647" target="_blank">WELTOP</a></td></tr></tbody></table></td><td>待披露</td><td>1999-11-17</td><td>北京</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">北京威远图易数字科技有限公司(简称WELTOP),专注于三维实景地图信息采集、处理、管理、分享、应用和动态更新技术。是专业的、综合的地理空间信息服务提供商。公司服务于政府和企业的客户,自主研发的PPVISION三维实景地图生产、管理与发布软件系统,为中国的空间信息需求用户提供高性能的软件和硬件产品。</span><span class="js-split-container" data-num="37" data-length="150">北京威远图易数字科技有限公司(简称WELTOP),专注于三维实景地图信息采...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>8</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="开睿动力" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b160b278456" target="_blank">开睿动力</a></td></tr></tbody></table></td><td>待披露</td><td>2004-10-29</td><td>福建</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">开睿动力通信科技有限公司是创新型的技术企业,成立于2004年,注册资本1000万元,是一家具备甲级测绘资质的专业地图服务提供商,拥有10多项自主知识产权,其中软件著作权证8项、专利证书4项、自主知识产权的高速矢量地图引擎,可及时更新、覆盖全国各地的地理空间数据。</span><span class="js-split-container" data-num="37" data-length="131">开睿动力通信科技有限公司是创新型的技术企业,成立于2004年,注册资本10...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>9</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="" alt="佛山宇星创媒" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/bef6a272316" target="_blank">佛山宇星创媒</a></td></tr></tbody></table></td><td>待披露</td><td>2009-08-28</td><td>广东</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">佛山市宇星创媒信息科技有限公司是一家致力于提供基于地理信息系统(GIS)的商业信息增值服务的高新技术企业。 目前公司正在逐步计划通过手机、网站、数字电视、汽车导航等多媒体数字化用户终端,尝试与当前前缘的人际互动工具或平台相结合(如微博、各种即时通讯等),为中国互联网用户提供本地化社区服务,逐步实现在人们的日常生活、消费与企业服务、商业活动等领域,提供到精准的全方位地理信息增值服务。</span><span class="js-split-container" data-num="37" data-length="192">佛山市宇星创媒信息科技有限公司是一家致力于提供基于地理信息系统(GIS)的...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>10</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="宏图智慧" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b4b20314890" target="_blank">宏图智慧</a></td></tr></tbody></table></td><td>-</td><td>2015-08-19</td><td>四川</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">四川宏图智慧科技有限公司主要从事图形信息系统的开发和推广,公司自主开发了具有完全自主知识产权的GWIGS宏图智慧地理信息系统和图形交互系统,是智慧城市、大规模位置服务、图形信息交互应用平台的基础,在大数据应用展示和多系统整合领域具有领先的核心技术。</span><span class="js-split-container" data-num="37" data-length="124">四川宏图智慧科技有限公司主要从事图形信息系统的开发和推广,公司自主开发了具...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>11</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="" alt="图创信息" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/bb090334100" target="_blank">图创信息</a></td></tr></tbody></table></td><td>-</td><td>2013-10-22</td><td>山东</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">青岛图创信息技术有限公司技术实力雄厚,拥有自主知识产权的GIS开发平台(地图引擎)-GISONE,能够满足客户多方面的开发需求。公司团队在国土、燃气、自来水等大型应用系统项目上,具有丰富的开发和实施经验。目前,图创开发的行业应用产品,已在智慧城市、地下管网、远传物联、大数据分析等领域广泛应用。</span><span class="js-split-container" data-num="37" data-length="147">青岛图创信息技术有限公司技术实力雄厚,拥有自主知识产权的GIS开发平台(地...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>12</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="GomSpace" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b7f96316955" target="_blank">GomSpace</a></td></tr></tbody></table></td><td>-</td><td>2007-01-01</td><td>丹麦</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">GomSpace是位于丹麦的空间公司,于2007年成立。我们的使命是通过在专业纳米卫星技术的基础上引入新产品,即组件,平台和系统,从事全球空间系统和服务市场。</span><span class="js-split-container" data-num="37" data-length="79">GomSpace是位于丹麦的空间公司,于2007年成立。我们的使命是通过在...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>13</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="" alt="图葳数码" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b4168256544" target="_blank">图葳数码</a></td></tr></tbody></table></td><td>-</td><td>2007-06-22</td><td>天津</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">公司长期致力于生产电子地图数据产品和其他的地理信息相关内容的业务。可承接地图数据公共设施点的采集业务、数据挖掘和分析服务、遥感影像加工服务、地图基础数据的建库业务、专题地图的定制业务等相关的地图业务</span><span class="js-split-container" data-num="37" data-length="99">公司长期致力于生产电子地图数据产品和其他的地理信息相关内容的业务。可承接地...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>14</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="中科星图" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b3d50256302" target="_blank">中科星图</a></td></tr></tbody></table></td><td>-</td><td>2014-01-21</td><td>湖南</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">湖南中科星图信息技术有限公司成立于2013年,是一家由中国科学院电子学研究所提供技术、中关村代办股份转让系统挂牌的高科技企业北京丰电科技股份有限公司(证券代码:430211)控股成立的高科技企业,注册资本1000万元。公司依托国家高分辨率对地观测系统湖南数据与应用中心和国家超级计算长沙中心的平台资源,在中国科学院电子学研究所多年积累的空间信息获取处理与应用技术的基础上,专注于发展高分辨率对地观测卫星数据产品及应用服务,提供符合行业应用需求的系统解决方案,努力打造空间信息应用领域的创新品牌。</span><span class="js-split-container" data-num="37" data-length="247">湖南中科星图信息技术有限公司成立于2013年,是一家由中国科学院电子学研究...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>15</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="浙江鸿图" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b41f2235059" target="_blank">浙江鸿图</a></td></tr></tbody></table></td><td>-</td><td>2014-09-22</td><td>浙江</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">鸿图是一家从事地理信息系统建设、地理信息软件开发、具备基础原始数据采集能力和丰富经验的地理信息技术创新型服务性企业。公司拥有国家测绘丙级资质,通过国际ISO9001认证,配备国内外先进的各类专业仪器设设备二十余台套,包括GIS系统开发平台、三维立体定位导航导购技术、三维建模平台、三维扫描设备、三维数字化成图设备、全球卫星定位系统(GPS)接收机、地质雷达、管线定位仪等。公司秉承“求真务实、开拓创新”的企业精神和“数据真实、技术领先、引领需求、服务到位”的经营理念,紧握传统测量命脉,专注地理信息技术的开发和</span><span class="js-split-container" data-num="37" data-length="255">鸿图是一家从事地理信息系统建设、地理信息软件开发、具备基础原始数据采集能力...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>16</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="天力发测绘" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b4853204102" target="_blank">天力发测绘</a></td></tr></tbody></table></td><td>-</td><td>1996-05-28</td><td>北京</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">天力发测绘是一家高科技地理空间信息企业,是服务于测绘及地理信息相关产业的先进设备和测量系统解决方案的提供商,所涉及领域覆盖天空(航空遥感测绘、无人机及航测软件)、地面(大地测绘、工程测量、移动三维扫描)及地下、水下(地下管网探测、水下地形测绘、变形监测、地质勘察)、地理信息数据采集、处理及应用。</span><span class="js-split-container" data-num="37" data-length="148">天力发测绘是一家高科技地理空间信息企业,是服务于测绘及地理信息相关产业的先...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>17</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="联投万科" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b223e273738" target="_blank">联投万科</a></td></tr></tbody></table></td><td>-</td><td>2010-06-01</td><td>湖北</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">致力于激光雷达(LiDAR)、计算机视觉、无人机以及三维地理信息的研发与应用,是国内领先的激光雷达软硬件和综合服务提供商。目前,已成功自主开发了优秀的激光点云数据管理、分析和建模软件以及航空影像处理等软件。在硬件方面,推出了车载信息平台、无人机平台、飞艇以及直升机等多个系统平台,用来为客户提供快捷、高效的数据采集服务。同时,数字绿土在三维扫描、数字林业、电力巡线、三维地形、智慧城市、文物重建、灾害评估和地籍调查等多个领域拥有成熟系统的解决方案。</span><span class="js-split-container" data-num="37" data-length="224">致力于激光雷达(LiDAR)、计算机视觉、无人机以及三维地理信息的研发与应...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>18</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="四维航遥" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b7011331088" target="_blank">四维航遥</a></td></tr></tbody></table></td><td>-</td><td>2003-06-26</td><td>吉林</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">吉林四维航遥信息技术有限公司主要从事地理信息产品的研制和工程服务,包括:遥感影像数据处理;数字摄影测量工程;GIS系统工程建设;数字国土工程;数字农业工程;数字城市工程;基础地理信息数据库和专业地理信息数据库的建设;航测、遥感、测绘及地理信息系统方面的软件开发和系统集成。</span><span class="js-split-container" data-num="37" data-length="136">吉林四维航遥信息技术有限公司主要从事地理信息产品的研制和工程服务,包括:遥...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>19</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="FTC友好创达" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/bf8c6193888" target="_blank">FTC友好创达</a></td></tr></tbody></table></td><td>-</td><td>2001-11-02</td><td>北京</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">北京友好创达科技有限公司,成立于1993年,注册资本5000万元,公司长期专注于数字档案和地理空间两大领域,凭借完备的技术体系和丰富的行业经验,整合航空摄影测量设备、图像后处理软件、大幅面输入输出设备、数字化加工管理软件等多项国际先进技术,面向国土、测绘、地矿、水利、电力、军队等行业的千余家企事业单位,提供行业应用解决方案。公司坚持自主创新,多年来与多家政府业务单位、研究所、高校建立了合作关系,共同致力于行业标准制定与技术研发,为行业用户转型升级保驾护航。</span><span class="js-split-container" data-num="37" data-length="230">北京友好创达科技有限公司,成立于1993年,注册资本5000万元,公司长期...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr><tr><td>20</td><td class="left-col"><table class="lazy-img  -alias -text -w36"><tbody><tr><td class="-w36"><div class="logo-text -l2 -w36"><span class="text">暂无</span></div><div class="logo -w36"><img class="img expand-img" data-src="https://img.tianyancha.com/logo/product/[email protected]!f_200x200" alt="图创时代" erro-src="https://img.tianyancha.com/logo/teamMember/[email protected]!fill_200x200"></div></td><td><a class="link-click" href="https://www.tianyancha.com/brand/b827f228259" target="_blank">图创时代</a></td></tr></tbody></table></td><td>-</td><td>2014-12-18</td><td>北京</td><td class="left-col"><span class="js-shrink-container"><span class="js-full-container hidden">北京图创时代科技有限公司成立于2014年,是专注于提供企业地图云一体化解决方案的高科技企业,致力为商企应用提供“互联网 ”地理智慧,助力企业认知空间的极限,探索未知和可能。首先,为企业、机构和应用开发者的集成开发、应用推广提供一站式的服务支撑,让位置服务与应用更加简单、便捷。让位置服务成为连接、激活和驱动位置生态发展的新的互联网基础设施。</span><span class="js-split-container" data-num="37" data-length="170">北京图创时代科技有限公司成立于2014年,是专注于提供企业地图云一体化解决...</span><a style="cursor: pointer;" class="js-shrink-btn  link-click">详情</a></span></td></tr></tbody>‘
66     a = Analysis(source=‘project_table‘, table=table)
67     a.table_body()

main.py

 1 # -*-coding:utf8-*-
 2
 3 import csv
 4 import shutil
 5 from inform_table import InformTable
 6 from inform_data import Analysis
 7 import os
 8 import time
 9
10
11 class Main:
12     def __init__(self):
13         # self.read_url = ‘中关村朝阳园总体数据.csv‘
14         self.read_url = ‘中关村高新技术企业名录库.csv‘
15         self.read_title = ‘法人单位名称‘
16         self.companies = []
17         self.company_num = 0
18         self.company_col = 2  # 实验文件文件为0,正式运行为2
19         self.region = 3
20         self.terminate = 0    # 程序中断后新开始的编号(编号=csv文件公司序号-1)
21
22         self.fail_company = ‘result\\search_company_failed.csv‘
23         self.fail_message = ‘result\\search_message_failed.csv‘
24
25     # 读取企业名称
26     def read(self):
27         with open(unicode(self.read_url, ‘utf8‘), ‘r‘) as readering:
28             reader = csv.reader(readering)
29             for row in reader:
30                 if row[self.company_col] != self.read_title:
31                     self.companies.append([row[self.company_col]] + [row[self.region]])
32         self.company_num = len(self.companies)
33
34     def out(self, foldername, filename, out_message):
35         if not os.path.exists(‘result\\‘+foldername.decode(‘utf8‘)):
36             os.mkdir(‘result\\‘+foldername.decode(‘utf8‘).encode(‘gb18030‘))
37
38         with open(unicode(‘result\\‘+foldername+‘\\‘+filename+‘.csv‘, ‘utf8‘), ‘ab‘) as w:
39             writer = csv.writer(w)
40             writer.writerow(out_message)
41
42     def writer_message(self, filename, table_name, tables):
43         for table in range(len(tables)):
44             analysis = Analysis(table_name, tables[table])
45             if table == 0:
46                 if ‘project‘ in table_name:
47                     self.out(filename, table_name, analysis.table_head()+[‘所属园区‘])
48                 else:
49                     self.out(filename, table_name, analysis.table_head())
50             items = analysis.table_body()
51             for i in range(len(items)):
52                 if ‘project‘ in table_name:
53                     isBelong = ‘其他‘
54                     if ‘北京‘ in items[i][4]:
55                         for c_id in range(len(self.companies)):
56                             if items[i][1] in self.companies[c_id][0]:
57                                 isBelong = self.companies[c_id][1]
58                     self.out(filename, table_name, items[i]+[isBelong])
59                 else:
60                     self.out(filename, table_name, items[i])
61             time.sleep(5)
62
63     # 查找企业相关信息
64     def search(self):
65         if not os.path.exists(‘result‘):
66             os.mkdir(‘result‘)
67         work = InformTable()
68         work.login()
69         for company in range(self.terminate, self.company_num):
70             print company, self.companies[company][0]
71             result = work.search_main(self.companies[company][0])
72             if ‘fail‘ in result:
73                 with open(self.fail_company, ‘ab‘) as w:
74                     writer = csv.writer(w)
75                     writer.writerow([self.companies[company][0]])
76             else:
77                 holding_table, financing_table, project_table = result[0], result[1], result[2]
78                 print len(holding_table), len(financing_table), len(project_table)
79                 if len(holding_table) == 0 and len(financing_table) == 0 and len(project_table) == 0:
80                     with open(self.fail_message, ‘ab‘) as w:
81                         writer = csv.writer(w)
82                         writer.writerow([self.companies[company][0]])
83                 else:
84                     print ‘正在录入……‘
85                     self.writer_message(self.companies[company][0], ‘holding_table‘, holding_table)
86                     self.writer_message(self.companies[company][0], ‘financing_table‘, financing_table)
87                     self.writer_message(self.companies[company][0], ‘project_table‘, project_table)
88         work.exit_driver()
89
90
91 if __name__ == ‘__main__‘:
92     if os.path.exists(‘result‘):
93         shutil.rmtree(‘result‘)
94     thing = Main()
95     thing.read()
96     thing.search()

原文地址:https://www.cnblogs.com/jpapplication/p/10295803.html

时间: 2024-10-13 03:36:45

python应用:selenium之爬取天眼查信息的相关文章

[python爬虫] Selenium定向爬取PubMed生物医学摘要信息

本文主要是自己的在线代码笔记.在生物医学本体Ontology构建过程中,我使用Selenium定向爬取生物医学PubMed数据库的内容.        PubMed是一个免费的搜寻引擎,提供生物医学方面的论文搜寻以及摘要.它的数据库来源为MEDLINE(生物医学数据库),其核心主题为医学,但亦包括其他与医学相关的领域,像是护理学或者其他健康学科.它同时也提供对于相关生物医学资讯上相当全面的支援,像是生化学与细胞生物学.        PubMed是因特网上使用最广泛的免费MEDLINE,该搜寻引

[python爬虫] Selenium定向爬取虎扑篮球海量精美图片

前言: 作为一名从小就看篮球的球迷,会经常逛虎扑篮球及湿乎乎等论坛,在论坛里面会存在很多精美图片,包括NBA球队.CBA明星.花边新闻.球鞋美女等等,如果一张张右键另存为的话真是手都点疼了.作为程序员还是写个程序来进行吧!        所以我通过Python+Selenium+正则表达式+urllib2进行海量图片爬取.        前面讲过太多Python爬虫相关的文章了,如爬取新浪博客.维基百科Infobox.百度百科.游迅网图片,也包括Selenium安装过程等等,详见我的两个专栏: 

[python爬虫] Selenium定向爬取海量精美图片及搜索引擎杂谈

我自认为这是自己写过博客中一篇比较优秀的文章,同时也是在深夜凌晨2点满怀着激情和愉悦之心完成的.首先通过这篇文章,你能学到以下几点:        1.可以了解Python简单爬取图片的一些思路和方法        2.学习Selenium自动.测试分析动态网页和正则表达式的区别和共同点        3.了解作者最近学习得比较多的搜索引擎和知识图谱的整体框架        4.同时作者最近找工作,里面的一些杂谈和建议也许对即将成为应届生的你有所帮助        5.当然,最重要的是你也可以尝

python爬虫实战(一)----------爬取京东商品信息

本文章的例子仅用于学习之用,如涉及版权隐私信息,请联系本人删除,谢谢. 最近一直在练习使用python爬取不同网站的信息,最终目的是实现一个分布式的网络爬虫框架,可以灵活适用不同的爬取需求. 项目github地址: https://github.com/happyAnger6/anger6Spider 在学习的过程中遇到不少问题,在这里做一下总结,并分享出来,希望有兴趣的朋友批评指正,共同学习共同进步. 本着实用至上的目的,不准备过多讲实现细节和原理,直接通过项目需求来边实战边学习,因此本系列文

用selenium+webdriver爬取复旦图书馆信息记录

这个月我大姨夫来访, 絮絮叨叨搞的心情不佳, 需要一些快感. 通常获得快感的方式有两种: 毁灭和创造. 然而毁树容易栽树难, 但成为虐猫狂人薛定谔臣妾似乎也办不到. 所以我喜欢创造性地毁灭. 额, 其实我特别喜欢我旦的图书馆, 但是毁灭要从喜欢开始, 不然以后我如何毁灭这个世界呢? 我旦图书馆登录使用的是学号加密码的形式, 然而初始密码是十分简单的. 虽然系统很温馨地提示读者们修改密码, 然而并没有什么卵用, 很多很多童鞋没事还是不会改的, 甚至有些童鞋都不知道有这个登录功能. 很久以前我就注意

python利用selenium+requests+beautifulsoup爬取12306火车票信息

在高速发展的时代.乘车出远门是必不可少的,有些查询信息是要收费的.这里打造免费获取火车票信息 想要爬取12306火车票信息,访问12306官方网站,输入出发地,目的地  ,时间  之后点击确定,这是我们打开谷歌浏览器开发者模式找到   https://kyfw.12306.cn/otn/resources/js/framework/station_name.js    这里包含了所有城市的信息和所有城市的缩写字母.想要获取火车票信息  https://kyfw.12306.cn/otn/left

使用selenium + Chrome爬取某网站乌云公开漏洞文章并保存为pdf文件

目的:使用selenium + Chrome爬取某网站指定类型的乌云公开漏洞文章,即在win10终端输入漏洞类型(如未授权),则爬取所有该类型的漏洞文章,并把每个分页的数字作为文件夹名,来保存该分页下面的所有的漏洞文章. 总结:本例只是能简单的爬取某一类型漏洞的所有文章,但不能爬取多个类型漏洞的所有文章,有时可能会有一些小bug导致没爬取完就崩溃,需要手工修改进而重新爬.其它问题解决看注释. 关于python代码里面出现中文在windows里面的处理,还没完全掌握.可参考Python for W

[Python学习] 简单爬取CSDN下载资源信息

这是一篇Python爬取CSDN下载资源信息的例子,主要是通过urllib2获取CSDN某个人所有资源的资源URL.资源名称.下载次数.分数等信息:写这篇文章的原因是我想获取自己的资源所有的评论信息,但是由于评论采用JS临时加载,所以这篇文章先简单介绍如何人工分析HTML页面爬取信息. 源代码 # coding=utf-8 import urllib import time import re import os #****************************************

【转载】教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神

原文:教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神 本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http://www.xiaohuar.com/,让你体验爬取校花的成就感. Scrapy,Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. Scrapy吸引人的地方在于它是一个框架,任何人都可