基于spider docstrings生成spider md文档。

scrapy-spiderdocs的Python项目详细描述


用法示例

pip install scrapy-spiderdocs
scrapy spiderdocs <module.name>

示例项目

例如,请参见documented项目。

# -*- coding: utf-8 -*-importscrapyclassExampleSpider(scrapy.Spider):"""Some text.
    Hi!

    ; Note

    Some note.

    ; Output

    {
        "1": 1
    }
    """name='example'allowed_domains=('example.com',)start_urls=('http://example.com/',)defparse(self,response):yield{'body_length':len(response.body)}classExampleSpider2(scrapy.Spider):"""Some text.
    Hi!

    ; Info

    Some info.
    """name='example2'allowed_domains=('example.com',)start_urls=('http://example.com/',)defparse(self,response):yield{'success':True}

设置:

SPIDERDOCS_SECTION_PROCESSORS={'output':lambdaname,content:'### {name}\n\n```json\n{content}\n```'.format(name=name,content=content),'info':lambdaname,content:'{content}'.format(content=content)}

执行命令:

scrapy spiderdocs documented.spiders

输出:

# documented.spiders spiders

## example2 [documented.spiders.example.ExampleSpider2]

Some info.

## example [documented.spiders.example.ExampleSpider]

### Note

Some note.

### Output

```json
{
    "1": 1
}
```

输出选项

标准输出

scrapy spiderdocs <module.name> > somefile.md

-o–output)选项

scrapy spiderdocs <module.name> -o somefile.md

设置

SPIDERDOCS_LOCATIONS={'module.name':"somefile.md"}

未指定模块时使用的设置。

scrapy spiderdocs

docstring语法

使用;创建节。例如:

; Section 1

Some text ...

; Section 2

Some text ...

使用; end关闭节:

This text will not be added to the documentation.

; Section 1

Some text ...

; end

And this text also will be skipped.

分区处理器

例如:

SPIDERDOCS_SECTION_PROCESSORS={'output':lambdaname,content:'### {name}\n\n```json\n{content}\n```'.format(name=name,content=content)}
; Output

{"attr": "value"}

将转换为:

### Output

```json
{
    "attr": "value"
}
```

碎屑设置

SPIDERDOCS_LOCATIONS: {<module>: <destination>},默认值:{}

SPIDERDOCS_SECTION_PROCESSORS: {<section_name>: <function(name, content) -> str>},默认值:{}

参见上面的用法示例。

开发

git clone git@github.com:nanvel/scrapy-spiderdocs.git
cd scrapy-spiderdocs
virtualenv .env --no-site-packages -p /usr/local/bin/python3
source .env/bin/activate
pip install scrapy
scrapy crawl example
scrapy spiderdocs documented.spiders
python -m unittest documented.tests

待办事项

unittests(是否没有docstring,…)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
将Java中的对象列表序列化为json   在同一Play Framework项目中同时使用Ebean和JPA的java   oop如何在整个Java项目中共享API密钥   java ADT Eclipse SDK故障未找到DDM   扫描程序中变量的递归Java输入值未应用于方法中的变量   java将空格转换为命令行类型的空格   JavaSpring,如何决定客户机应该使用哪个服务?   java致命异常:main(Android标准)   java编译错误是因为类型检查还是三元运算符?   java Sikuli+Webdriver:getting error x.png看起来像一个文件,但在磁盘上找不到。假设是文本   java选择位置。。。。ms sql 2005中需要电气状态   由于OSGi捆绑包依赖性问题,java无法启动RCP应用程序   json java gson fromjson返回非泛型的null   如何将google api访问令牌从java服务器传递到gapi javascript客户端?   java在已排序的LinkedList中添加元素   java ForkJoinPool为什么程序抛出OutOfMemoryError?   java SQUARE无法解析为Processing/Eclipse中的变量   java如何为Sun App Server 8.2设置JNDI