首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web爬虫类

Web爬虫类
EN

Code Review用户
提问于 2016-02-06 13:37:58
回答 2查看 379关注 0票数 1

我使用爬虫类的方式如下,我开始认为这是一种糟糕的做法:

crawler.py

代码语言:javascript
复制
import requests

class Crawler():
    def __init__(self, url):
        self.url = url

    def web_crawler(self):
        requests.get(self.url)
        return requests.text

main.py

代码语言:javascript
复制
for url in urls:
    crawler = Crawler(url)
    results = crawler.web_crawler()

url参数移出Crawler's __init__并将其移动到web_crawler函数中会更好吗?这样,类就不必在main.py中被多次重新初始化。

EN

回答 2

Code Review用户

发布于 2016-02-06 14:10:48

由于Crawler类与__init__一起只有一个方法,所以可以完全避免类并编写:

代码语言:javascript
复制
def web_crawler(url):
    requests.get(url)
    return requests.text

现在必须精确地初始化0次,从而将问题从根中移除:

代码语言:javascript
复制
for url in urls:
    results = web_crawler(url)

在定义和使用上,代码也是简化的。

票数 5
EN

Code Review用户

发布于 2016-02-06 14:02:19

还可以创建字段名url,并使用getter和setter获取/更改类外部的值。

票数 0
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/119083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档