情感测试简介

首页 » 常识 » 问答 » Python做个搜索引擎5网页蜘蛛代
TUhjnbcbe - 2021/4/10 2:43:00
北京看白癜风一般多少钱 http://yyk.39.net/bj/zhuanke/89ac7.html
1.介绍1.1介绍

昨天我们明白了网页蜘蛛的工作原理,今天就可以开始根据这个原理进行代码的编写了。

虽然python也可以编写面向过程的程序,但是使用面向对象的方式编写程序是一个好的习惯,它更加可以满足各种复杂的业务逻辑的需要,同时代码也更容易读懂。

福哥要先开发网页蜘蛛程序,所以先建立一个Spider对象,用它来实现网页蜘蛛的全部功能。

2.Spider对象

首先,福哥先祭出Spider对象,这个对象就是网页蜘蛛这个对象的抽象类了。这个对象要实现网页蜘蛛的全部功能(当然仅仅是我们需要的功能),里面包含了建立爬取任务队列、爬取网页内容、分析网页内容、保存增量网页等等功能。

2.1代码

这是Spider对象的代码(未完成),保存在lib/Spider.py里面,作为一个自定义的软件包使用。

importpymysqlfromseleniumimportwebdriverimporttimeimportreclassSpider:mysqlCN=NonemysqlCS=Nonechrome=NonechromeOpts=webdriver.ChromeOptions()#chromeOpts.add_argument("--headless")chromeOpts.add_argument("--disable-gpu")chromeOpts.add_argument("--no-sandbox")chrome=webdriver.Chrome(options=chromeOpts)#openmysqldefopen(self):try:self.mysqlCN=pymysql.connect("..2.","tfse","abcdef")self.mysqlCS=self.mysqlCN.cursor()self.mysqlCN.select_db("tfse")exceptExceptionase:print(e)exit()#getpendingdomainsdefgetPendingDomains(self,nums):try:self.mysqlCS.execute("SELECT*FROMwebsitesORDERBYnextFetchDTASC,lastFetchDTDESCLIMIT"+str(nums))rows=self.mysqlCS.fetchall()returnrowsexceptExceptionase:print(e)self.mysqlCN.rollback()returnNone#fetchadomainURLdeffetchDomainURL(self,domainName):#openpageofdomainurl="

1
查看完整版本: Python做个搜索引擎5网页蜘蛛代