糗事百科小爬虫

目标: 

        通过selenium访问糗事百科,定位一组对象的方式,打印首页内容

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

如果要在抓取的内容前加入下标循环怎么办?Python内置的enumerate函数可以把一个list变成索引-元素对,这样就可以在for循环中同时迭代索引和元素本身:

1 >>> for i,value in enumerate(['A','B','C']):
2 ...     print(str(i)+','+value)
3 ... 
4 0,A
5 1,B
6 2,C

 

 

qiushibaike.py

 1 #coding: utf-8
 2 from selenium import webdriver
 3 class Qiubai:
 4 
 5     def __init__(self):
 6         self.dr = webdriver.Firefox()
 7         #self.dr = webdriver.PhantomJS()
 8         # self.dr = webdriver.Chrome()
 9         self.dr.get('http://www.qiushibaike.com/')
10 
11     def print_content(self):
12         self.dr.implicitly_wait(30)
13         main_content = self.dr.find_element_by_id('content-left')
14         for i,content in enumerate(main_content.find_elements_by_class_name('content')):
15             try:
16                 print(str(i) + ". " + content.text)
17             except UnicodeEncodeError:
18                 continue
19         self.quit()
20 
21     def quit(self):
22         self.dr.quit()
23 
24 Qiubai().print_content()

 执行文件,小爬虫就做好了,下午茶的快乐时间。。。

 

参考:

    乙醇的cnblog

posted @ 2016-10-29 15:48  Evies  阅读(106)  评论(0)    收藏  举报