• Stars
    star
    108
  • Rank 321,259 (Top 7 %)
  • Language
    Python
  • Created over 6 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

演示如何使用crifan的gitbook的模板去创建自己的gitbook电子书

Gitbook模板

最后更新:20210918

项目代码仓库

https://github.com/crifan/gitbook_template

项目作用

  1. 用于演示如何使用crifangitbook模板
  2. 别人和自己,可以基于此模板,快速方便的创建出自己的gitbook电子书

项目结构

此项目主要包括:

  • 各种工具:主要是自己写的Makefile,用于自动化gitbook初始化调试编译提交部署等一系列过程以及相关配置或脚本工具
  • gitbook的demo源码:写了个gitbook的demo的源码,供参考使用,用于创建一个自己的gitbook

总体目录结构和各自含义如下:

.
├── README.md
├── books
│   └── gitbook_demo            # 基于template的gitbook的demo
│       ├── Makefile            # 调用公共的Makefile
│       ├── README_current.json # 当前book的readme的部分,内部调用 common/tools/generate_readme_md.py 生成真正的 README.md
│       ├── book_current.json   # 当前book的book.json的部分,内部调用 common/tools/generate_book_json.py 生成完整的book.json
│       └── src                 # 当前gitbook的源码部分
│           ├── README.md       # 同步拷贝自 上级目录中生成的README.md
......
├── common
│   └── backup
│       ├── node_modules_selfMac.zip        # 备份的自己的Mac中的node_modules
│   ├── config
│   │   ├── common
│   │   │   ├── common_book.json            # 所有book的共用部分,用于生成每个book的book.json
│   │   │   └── common_gitignore            # 所有book共用的gitignore,拷贝到每个book中重命名为.gitignore
│   │   ├── deploy                          # 和(编译后的pdf,html等)部署有关的内容
│   │   │   ├── deploy_ignore_book_list.txt # 如果想要部署时忽略某个book,可以把该book的名字加到这里
│   │   │   ├── deploy_server_info.mk       # 部署服务器相关信息,IP、用户、部署路径等
│   │   │   └── deploy_server_password.txt  # 部署服务器的密码,单独保存
│   │   └── template
│   │       └── template_README.md          # 所有book共用的README的模板,用于生成每个book的README.md
│   ├── gitbook_makefile.mk                 # 所有book共用的Makefile
│   └── tools
│       ├── generate_book_json.py           # 脚本,用于从book_current.json和common_book.json生成每个book的book.json
│       ├── generate_md_from_summary.py     # 脚本,用于从src/SUMMARY.md中生成对应md文件(以及更新已有md文件的最后修改时间)
│       ├── generate_readme_md.py.py        # 脚本,用于从README_current.json获取配置信息,根据模板template_README.md,替换其中的{{xxx}},去生成每个book的README.md
│       └── sync_ReadmeCurrent_to_bookCurrent.py  # 脚本,用于从README_current.json同步gitRepoName、bookName、bookDescription到book_current.json
│       └── update_crifan_github_io_readme.py  # 脚本,用于自动更新crifan的本地的github.io的README.md,更新最后更新日期和加上(如果缺失)当前book到gitbook列表
├── generated                               # 所有后续工具生成的各种文件都放到这里
│   ├── books                               # 保存每个book生成的各种文件,包括pdf,html等等
│   └── gitbook                             # 保存gitbook生成的文件,目前只有共用的node_modules
├── img                                     # 保存此README.md说明文档所用到的图片
│   ├── gitbook_debug_localhost.png
│   ├── gitbook_generated_all_files_to_ouput_folder.png
│   ├── gitbook_installed_plugin_node_modules.png
│   └── gitbook_various_hint_callout_effect.png

为何会有这个模板?

之前自己用Gitbook创建了很多个book,为了更高效和统一管理,所以把公共部分提取出来。

为了让此gitbook的框架能为别人所用,所以整理出来,做成模板和demo,供参考和使用。

此模板从无到有的过程,感兴趣的可以去看看:

使用步骤

简述:

git clone https://github.com/crifan/gitbook_template.git

cd gitbook_template/books/gitbook_demo/
rm -rf node_modules/
make init

make debug

make all

make deploy

下面详细介绍,如何使用本Gitbook模板,去创建一个自己的book

前提和准备

已安装好gitbook

可以通过下面命令确认是否已安装好gitbook

$ gitbook --version
CLI version: 2.3.2
GitBook version: 3.2.3

手动修复bug:ENOENT no such file or directory

gitbook有个bug:

make debug偶尔会出现这个错误: Error: ENOENT: no such file or directory, stat '/Users/crifan/dev/dev_root/gitbook/GitbookTemplate/gitbook_template/gitbook_demo/debug/gitbook/gitbook-plugin-copy-code-button/toggle.js'

解决办法:

/Users/换成你的用户名/.gitbook/versions/3.2.3/lib/output/website/copyPluginAssets.js

中的copyResourcesfs.copyDirconfirmtrue改为false

具体步骤,详见:

下载模板源码

git clone https://github.com/crifan/gitbook_template.git

初始化安装Gitbook插件

cd gitbook_template/books/gitbook_demo/
rm -rf node_modules/
make init

作用:内部会先sync_content同步和生成各种所需文件,以及再gitbook install去安装插件到book下的node_modules文件夹中。

插件安装后效果如图:

Gitbook的install插件到node_modules

调试+编写book源码

make debug

作用:内部会调用gitbook serve去调试,把调试生成的文件都放到generated/books/gitbook_demo/debug文件夹中。

然后就可以去用浏览器去打开:

http://localhost:4000/

看到此gitbook模板demo的效果了:

Gitbook的debug的localhost效果

Gitbook的各种hint/callout提示的效果

然后就可以去用编辑器,比如VSCode,去编辑和更新自己的markdown=md源码了,然后gitbook会自动检测到文件变动,刷新页面。

生成静态文件:html,pdf,epub,mobi

make all

作用:内部会分别调用

  • gitbook build:生成静态html
  • gitbook pdf:生成pdf文件
  • gitbook epub:生成epub文件
  • gitbook mobi:生成mobi文件

生成的文件都保存到了generated/books/gitbook_demo/release/gitbook_demo文件夹中:

gitbook生成各种文件到release文件夹中

[可选]提交commit+部署deploy

上述步骤中已经得到相关文件了,如果只是想要简单粗暴的发布到自己网站上,只需要拷贝和粘贴即可。

如果同时希望把此繁琐的人工操作自动化,则可以使用此处的工具:

make deploy

其中:deploy = upload + commit

去提交(git源码)并部署(把生成的htmlpdfmobi等文件上传)到自己的服务器上了

注意deploy之前,需要修改相关信息为你自己的配置:

对于upload

当然,如果自己没有upload的需求,则可以修改common/gitbook_makefile.mk中的deploy的依赖:

deploy: upload commit

改为:

deploy: commit

即可去掉upload的动作。

对于commit

对于:common/gitbook_makefile.mk

如果自己没有需要commit的github.io的代码,则可以保持默认的:

ENABLE_COMMIT_GITHUB_IO = false

而不会去commit任何内容。

如果需要,则去改为true:

ENABLE_COMMIT_GITHUB_IO = true

以及更新为你自己的github本地文件路径,比如:

GITHUB_IO_PATH=/Users/crifan/dev/dev_root/github/github.io/crifan.github.io

对于deploy

  • 修改部署服务器相关信息:
    • common/config/deploy/deploy_server_info.mk中的IP+用户账号+文件上传路径
    • common/config/deploy/deploy_server_password.txt中的密码
DEPLOY_SERVER_IP=your_deploy_server_ip
DEPLOY_SERVER_USER=your_deploy_server_username
DEPLOY_SERVER_PATH=your_deploy_server_file_upload_path

和:

your_server_password

比如我的是:

DEPLOY_SERVER_IP=149.28.136.189
DEPLOY_SERVER_USER=root
DEPLOY_SERVER_PATH=/data/wwwroot/book.crifan.org/books

xxxxxx

新建gitbook

下面通过实际例子去介绍如何新建一个gitbook:

切换到books目录下,去下载代码:

git clone https://github.com/crifan/python_common_code_snippet.git

切换到该目录下:

cd python_common_code_snippet

然后手动拷贝模板bookgitbook_demo中的所有内容到当前目录:

cp -a ../gitbook_demo/* .

编辑自己的book_current.jsonREADME_current.json,更新你的版本号,文件描述,book的name等。

再去同步更新内容:

make sync_content

其内部会:

  • 同步README_current.json中的gitRepoNamebookNamebookDescriptionbook_current.json中的repourltitledescription
  • (用Python脚本根据模板)从book_current.jsonREADME_current.json生成book.jsonREADME.md
  • 同步(拷贝)README.mdsrc/README.md

然后再去编辑自己的书的目录:src/SUMMARY.md

然后去:

make debug

注:其实(每次调试期间的)make debug内部也已经自动依赖和调用make sync_content了,以避免自己粗心,没有同步文件。

再去浏览器打开:

http://localhost:4000/

之后就是:更新你的各种md文件内容了

如果一切正常,gitbook系统会自动检测到md文件的改动,触发重新编译,自动刷新页面内容。

最后内容完成后,再去:

make deploy

去发布,即可。

其他说明

特殊处理:OnlyUseGithubIoBookList

如果想要对部分特殊的book:

只发布到github.io,而不发布到自己网站(book.crifan.org)中

则可以去更新:

  • common/tools/generate_readme_md.py
  • common/tools/sync_ReadmeCurrent_to_bookCurrent.py

中的:

OnlyUseGithubIoBookList = [
  "scientific_network_summary",
]

BookRoot_crifan = "book.crifan.org/books"
BookRoot_github = "crifan.github.io"

更新为自己的book的repo的name即可。

备份的node_modules_selfMac.zip

新增了common/backup/node_modules_selfMac.zip,是自己的Mac中的generated/gitbook/node_modules的压缩包

作用:万一,自己的或别人node_modules的环境被破坏了,或者想要换电脑但快速搭建gitbook环境,则可以快速的直接用此node_modules_selfMac.zip,解压后替换/覆盖到generated/gitbook/node_modules,即可。

根据SUMMARY.md自动生成和更新子md文件

已新增:common/tools/generate_md_from_summary.py

作用:

  • 根据输入的src/SUMMARY.md的路径,自动更新对应book中的md文件
    • 如果已存在该md文件:更新最后修改时间
    • 如果不存在:新建该md文件

用法举例:

python generate_md_from_summary.py -f /Users/limao/dev/crifan/gitbook/gitbook_template/books/linux_usage_dev_summary/src/SUMMARY.md

python ../../common/tools/generate_md_from_summary.py -f /Users/limao/dev/crifan/gitbook/gitbook_template/books/infiltrate_your_net_penetration_testing/src/SUMMARY.md

python ../../common/tools/generate_md_from_summary.py --disable-update-existed-md -f /Users/limao/dev/crifan/gitbook/gitbook_template/books/infiltrate_your_net_penetration_testing/src/SUMMARY.md

python ../../common/tools/generate_md_from_summary.py --disable-update-existed-md --disable-random-time -f /Users/limao/dev/crifan/gitbook/gitbook_template/books/infiltrate_your_net_penetration_testing/src/SUMMARY.md

python ../../common/tools/generate_md_from_summary.py --random-range 1200 -f /Users/limao/dev/crifan/gitbook/gitbook_template/books/infiltrate_your_net_penetration_testing/src/SUMMARY.md

python ../../common/tools/generate_md_from_summary.py -f /Users/limao/dev/crifan/gitbook/gitbook_template/books/infiltrate_your_net_penetration_testing/src/SUMMARY.md


Book root path:

python ../../common/tools/generate_md_from_summary.py -e /Users/limao/dev/crifan/gitbook/gitbook_template/books/industrial_control_security_overview/

python ../../common/tools/generate_md_from_summary.py -e /Users/limao/dev/crifan/gitbook/gitbook_template/books/infiltrate_your_net_penetration_testing/

Summary.md file:

python ../../common/tools/generate_md_from_summary.py -e /Users/limao/dev/crifan/gitbook/gitbook_template/books/information_security_overview/src/SUMMARY.md


20210720 Unified all:

for update md:

python ../../common/tools/generate_md_from_summary.py -e .

for generate md:

python ../../common/tools/generate_md_from_summary.py -e . -m summary

指定debug的端口用于同时debug多个book

已更新makefile支持在

make debug

时指定端口,即:

  • make debug == make debug GITBOOK_DEBUG_PORT=4000 GITBOOK_DEBUG_LRPORT=35729

对应内部的命令参数:

gitbook serve --port 4000 --lrport 35729 ...

注:lrport=live reload port=改动文件后自动重新加载

同时可以(在另外一个终端中)启动另外一个debug,指定特定的端口,比如:

  • make debug GITBOOK_DEBUG_PORT=4001 GITBOOK_DEBUG_LRPORT=35730

即可同时编辑多个gitbook,而不会出现端口相同而冲突。

给rsync添加代理以提速

此处用rsync同步上传文件到自己的github.io仓库中或自己的网站中时,有时候速度很慢

为了提速,可以考虑加代理。

此处common/gitbook_makefile.mk中默认关闭了代理:

ENABLE_RSYNC_PROXY = false

如果需要,可以去开启代理,且注意要改为你自己的代理的值,比如我自己的是:

ENABLE_RSYNC_PROXY = true

ifeq ($(ENABLE_RSYNC_PROXY), true)
# for rsync use sock5 proxy
PROXY_SOCK5 = 127.0.0.1:51837
RSYNC_PROXY = -e "ssh -o 'ProxyCommand nc -X 5 -x $(PROXY_SOCK5) %h %p' -o ServerAliveInterval=30 -o ServerAliveCountMax=5

提取共用的node_modules

如果你像我一样,不希望每个book都(通过gitbook install)创建自己的node_modules,以便于,用同一套gitbook的模块配置,用于多个book。

在第一次某个book的make init后(内部会调用gitbook install),会生成node_modules目录

则可以把node_modules移动到generated/gitbook

mv node_modules ../../generated/gitbook/node_modules

然后再去当前book中加上软链接:

ln -s ../../generated/gitbook/node_modules node_modules

以后新增book时,只需要重新创建对应软链接即可。

想要部署时忽略多个book中的某个book

如果你和我一样有个(实际上很少人会有这种)特殊需求,有多个book,想要在make deploy时,忽略某个book,则可以去:

GitbookCommon.mk同级目录中新建deploy_ignore_book_list.txt,然后加上要忽略部署上传的book,比如:

scientific_network_summary

Google Adsense

支持Google Adsense自动广告

book.json中包含了插件google-adsense的话,会在make init(内部调用gitbook init)初始化安装对应插件到:

node_modules/gitbook-plugin-google-adsense/

如果想要支持 自动广告,则需要把其中的:

book/plugin.js

改为:

require(["gitbook"], function(gitbook) {
    gitbook.events.bind("start", function(e, pluginConfig) {
        // console.log("=================== google-adsense start: pluginConfig=%o", pluginConfig);
        configs = pluginConfig['google-adsense'].ads;
        // console.log("configs=%o", configs);
        firstConfig = configs[0]
        firstClient = firstConfig.client
        // console.log("firstClient=%o", firstClient);

        // init script
        var adScript = document.createElement('script');
        // adScript.src = '//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
        adScript.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
        adScript.setAttribute('async', true);
        adScript.setAttribute('data-ad-client', firstClient); // add for Google Adsense Auto Ads
        // console.log("adScript=%o", adScript);
        document.body.appendChild(adScript);
    });
});

即可。

把Google Adsense相关配置换成你自己的

在发布之前,记得把其中的google adsense方面的配置,换成你自己的。

涉及到的Google Adsense相关配置有:

  • common/config/common/common_book.json
        "google-adsense": {
          "ads": [
            {
                "client": "ca-pub-6626240105039250"
            }
          ]
        },
        ...
        "ga": {
          "token": "UA-28297199-1"
        },
    • ca-pub-6626240105039250UA-28297199-1换成你自己的即可

此处的book.jsonREAMDME.md是用脚本生成的

此处的gitbook_demo的:

  • gibtookbook.json
  • README.md

是用脚本生成的:

  • Makefile中的generate_book_json
    • 调用common/tools/generate_book_json.py去从
      • 共用部分common/config/common/common_book.json
      • 和当前book的book_current.json
    • 去生成的
  • Makefile中的generate_readme_md
    • 调用common/tools/generate_readme_md.py去从
      • 模板README_template.md
      • 和当前book的README_current.json
    • 生成的

且相关的命令:

  • make init
  • make debug
  • make all

会自动(依赖)调用generate_book_json去生成,而无需自己手动生成。

当然,想要自己生成,则可以运行:

  • make generate_book_json
  • make generate_readme_md

make clean_all

任何时候,都可以用make clean_all去清除所有生成的文件,内部包含:

  • 所有的生成的文件:clean_generated_all
  • 本地debug调试目录:clean_debug
  • 用于发布的文件:clean_release
    • 具体包含:htmlpdfepubmobi

make help

对于Makefile如果还有其他疑问,可以通过make help去查看说明:

➜  gitbook_demo git:(master) ✗ make help
--------------------------------------------------------------------------------
Author  : crifan.org
Version : 20210115
Function: Auto use gitbook to generated files: website/pdf/epub/mobi; upload to remote server; commit to your github.io repository
                Run 'make help' to see usage
--------------------------------------------------------------------------------
CURRENT_DIR=/Users/crifan/dev/dev_root/gitbook/GitbookTemplate/gitbook_template/books/gitbook_demo
BOOK_NAME=gitbook_demo
NOT found gitbook_demo in IGNORE_FILE_CONTENT=

Usage:
  make <target>

Defaul Target: deploy

Targets:
  debug_include             Debug include file
  debug_dir                 Print current directory related info
  debug_python              Debug for makefile call python
  create_folder_debug       Create folder for gitbook local debug
  create_folder_release     Create folder for gitbook release: website+pdf+epub+mobi
  create_folder_website     Create folder for gitbook website
  create_folder_pdf         Create folder for pdf
  create_folder_epub        Create folder for epub
  create_folder_mobi        Create folder for mobi
  create_folder_all         Create folder for all: debug+release(website/pdf/epub/mobi)
  clean_generated_book_json Clean generated book.json file
  clean_generated_readme_md Clean generated README.md file
  clean_gitignore           Clean copied .gitignore
  clean_generated_all       Clean generated all files
  clean_debug               Clean gitbook debug
  clean_website             Clean generated gitbook website whole folder
  clean_pdf                 Clean generated PDF file and whole folder
  clean_epub                Clean generated ePub file and whole folder
  clean_mobi                Clean generated Mobi file and whole folder
  clean_release             Clean gitbook release
  clean_all                 Clean all generated files
  generate_readme_md        Generate README.md from ../README_template.md and README_current.json
  copy_readme               copy README.md to ./src
  copy_gitignore            copy common .gitignore
  sync_readme_to_book       Sync README_current.json to book_current.json
  generate_book_json        Generate book.json from ../book_common.json and book_current.json
  sync_content              sync content
  install                   gitbook install plugins
  init                      gitbook init to install plugins
  debug                     Debug gitbook
  website                   Generate gitbook website
  pdf                       Generate PDF file
  epub                      Generate ePub file
  mobi                      Generate Mobi file
  all                       Generate all files: website/pdf/epub/mobi
  upload                    Upload all genereted website/pdf/epub/mobi files to remote server using rsync. Create deploy_server_info.mk and deploy_server_password.txt which contain deploy server IP+User+Path and Password before use this
  commit                    Commit generated files to github io
  deploy                    Deploy = upload and commit for generated files
  help                      Show help

More Repositories

1

android_app_security_crack

安卓应用的安全和破解
Makefile
1,194
star
2

scientific_network_summary

总结关于科学上网的概念方法及工具
HTML
658
star
3

crifan_ebook_readme

Crifan的电子书的使用说明
HTML
298
star
4

http_restful_api

整理HTTP后台端的RESTful API方面的知识
Makefile
111
star
5

ios_reverse_dev

iOS逆向开发
Makefile
90
star
6

industrial_control_security_overview

工控安全概览
Makefile
74
star
7

app_capture_package_tool_charles

app抓包利器:Charles
Makefile
68
star
8

varyag_aircraft_carrier_come_china

瓦良格号航母来中国
Makefile
59
star
9

iOSBypassJailbreak

越狱iOS的hook插件,实现反越狱检测
Objective-C++
56
star
10

reverse_debug_frida

逆向调试利器:Frida
Makefile
42
star
11

crifanLib

crifan's library
C#
40
star
12

crawl_your_data_spider_technology

爬取你要的数据:爬虫技术
Makefile
36
star
13

python_spider_pyspider

Python爬虫框架:PySpider,既简单易用又功能强大且带图形界面
Python
35
star
14

iOSJailbreakDetection

iOS的ObjC的app,实现iOS越狱检测
Objective-C
35
star
15

api_tool_postman

API开发利器:Postman
Makefile
33
star
16

crifanLibPython

crifanLib python version
Python
29
star
17

ios_re_crack_shell_ipa

iOS逆向开发:砸壳ipa
Makefile
26
star
18

media_process_ffmpeg

强大的音视频处理工具:ffmpeg
Makefile
23
star
19

cpu_emulator_unicorn

CPU模拟利器:Unicorn
Makefile
21
star
20

ios_re_ios15_jailbreak

iOS逆向:iOS15越狱
Makefile
21
star
21

best_editor_vscode

史上最好用的编辑器VSCode
Makefile
19
star
22

http_summary

HTTP知识总结
Makefile
18
star
23

reverse_tool_ida

逆向利器:IDA
Makefile
18
star
24

crifan.github.io

Crifan的电子书大全
HTML
17
star
25

smart_speaker_disassemble_summary

智能音箱拆解总结
Makefile
16
star
26

BlogsToWordpress

将(新版)百度空间,网易163,新浪sina,QQ空间,人人网,CSDN,搜狐Sohu,博客大巴Blogbus,天涯博客,点点轻博客等博客搬家到WordPress
HTML
16
star
27

program_common_logic

总结计算机编程通用逻辑知识概念
Makefile
15
star
28

android_automation_uiautomator2

安卓自动化测试利器:uiautomator2
Python
15
star
29

information_security_overview

信息安全概览
Makefile
15
star
30

ios_security_protect

iOS安全与防护
Makefile
15
star
31

ios_re_monkeydev_debug

iOS逆向开发:MonkeyDev调试
Makefile
12
star
32

ios_re_jb_detection

iOS逆向开发:越狱检测和反越狱检测
Makefile
11
star
33

android_re_dynamic_debug

Android逆向:动态调试
Makefile
10
star
34

python_common_code_snippet

Python常用代码段
Makefile
10
star
35

honkit_template

用于创建HonKit电子书的HonKit的模板
Python
10
star
36

android_re_tool_jeb

安卓逆向利器:JEB
Makefile
10
star
37

ic_chip_industry_chain_summary

芯片产业链总结
Makefile
10
star
38

ios_re_iphone_jailbreak

iOS逆向开发:iPhone越狱
Makefile
9
star
39

ios_re_protobuf_reverse

iOS逆向YouTube:protobuf逆向
Makefile
9
star
40

feiyuiOSDemo

飞语云平台iOS点对点通话录音Demo
Swift
8
star
41

crifan_play_learn_logic_spirit

crifan的折腾精神、学习能力和逻辑能力的体现
HTML
8
star
42

explore_underlying_mechanism_binary_security

探究底层机制:二进制安全
Makefile
8
star
43

infiltrate_your_net_penetration_testing

潜入你的网络:渗透测试
Makefile
8
star
44

5g_message_rcs_tech_summary

5G消息RCS技术总结
Makefile
8
star
45

iOSYouTubeAdsFilter

MonkeyDev+Xcode项目,iOS逆向YouTube,尝试实现广告过滤功能
Objective-C++
7
star
46

work_job_summary

总结工作和职业相关的常识
Makefile
7
star
47

ebook_system_gitbook

电子书制作利器GitBook的总结
Makefile
7
star
48

crawler_proxy_tool_mimproxy

抓包代理利器:mitmproxy
Makefile
7
star
49

apple_develop_summary

苹果相关开发总结
Makefile
7
star
50

android_re_repack_apk

Android逆向:重新打包apk
Makefile
7
star
51

ios_automation_facebook_wda

iOS自动化测试利器:facebook-wda
Python
7
star
52

KeepAliveAndroid

安卓保活技术
C++
7
star
53

ios_re_dynamic_debug

iOS逆向开发:动态调试
Makefile
6
star
54

ios_re_static_analysis

iOS逆向开发:静态分析
Makefile
6
star
55

AutoRename

IDA plugin for auto rename symbol
Python
6
star
56

ShowSystemInfo

iOS的app,检测并显示iOS的iPhone的系统信息
Objective-C
6
star
57

editor_ide_summary

编辑器和IDE总结
Makefile
6
star
58

xpath_summary

总结XPath相关的语法和示例和经验
Makefile
6
star
59

use_python_write_spider

如何用Python写爬虫
Makefile
6
star
60

ios_re_swift_reverse

iOS逆向:Swift逆向
Makefile
6
star
61

free_hand_test_automation

解放你的双手:自动化测试
Python
5
star
62

guard_your_car_safety

守护你的座驾:汽车安全
Makefile
5
star
63

frida_re_example_function

Frida逆向实例和工具函数
Makefile
5
star
64

android_reverse_dev

Android逆向开发
Makefile
4
star
65

ios_re_tool_hopper

iOS逆向工具:Hopper
Makefile
4
star
66

good_android_emulator_nox

好用的安卓模拟器:夜神Nox
Makefile
4
star
67

python_regex_re_intro

Python中正则表达式:re模块详解
Python
4
star
68

AndroidYouTubeDynamicDebug

安卓逆向动态调试YouTube
Smali
4
star
69

super_search_regex

应用广泛的超强搜索:正则表达式
Makefile
4
star
70

web_automation_tool_playwright

跨平台Web自动化神器:Playwirght
Python
4
star
71

iOSAutomation

iOS设备自动化操作的环境搭建和代码演示
Objective-C
4
star
72

ios_re_restore_symbol

iOS逆向分析:恢复符号表
Makefile
4
star
73

popular_debugger_lldb

主流调试器:LLDB
Makefile
4
star
74

ios_re_experience_collection

iOS逆向:心得集锦
Makefile
4
star
75

ios_re_manage_app_tweak

iOS逆向:管理app和插件
Makefile
4
star
76

ios_re_detail_example

iOS逆向:举例详解
Makefile
4
star
77

rcs_tech_dev_summary

RCS技术开发总结
Makefile
4
star
78

PySpiderChinaProvinceCity

用PySpider爬取中国省市区的数据
Python
3
star
79

ios_re_youtube_reverse

iOS逆向开发:YouTube逆向
Makefile
3
star
80

desktop_app_framework_electron

跨平台桌面应用框架:Electron
Makefile
3
star
81

multimedia_core_system_ims

多媒体业务核心子系统:IMS
Makefile
3
star
82

industrial_automation_plc

工控自动化技术:PLC
Makefile
3
star
83

avoid_hacker_attack_web_security

防止被黑客攻击:Web安全
Makefile
3
star
84

ios_re_jailbreak_tweak

iOS逆向开发:越狱插件开发
Makefile
3
star
85

prevent_iphone_hacked_ios_security

防止iPhone被黑:iOS安全
Makefile
3
star
86

5g_tech_summary

5G技术概述
Makefile
3
star
87

android_keep_alive_tech

安卓保活技术
Makefile
3
star
88

exec_file_format_macho

可执行文件格式:Mach-O
Makefile
3
star
89

ios_re_codesign_ent

iOS逆向开发:签名和权限
Makefile
3
star
90

ios_re_debug_debugserver_lldb

iOS逆向调试:debugserver+lldb
Makefile
3
star
91

ios_re_ios_internal

iOS逆向开发:iOS底层机制
Makefile
2
star
92

ios_re_package_manager

iOS逆向开发:越狱包管理器
Makefile
2
star
93

android_dev_summary

Android开发总结
Makefile
2
star
94

common_logic_hardware_embedded

硬件和嵌入式通用逻辑知识概念
Makefile
2
star
95

executable_file_format

可执行文件格式
Makefile
2
star
96

learn_tech_method_experience

学习方法思路及技术心得总结
Makefile
2
star
97

mobile_automation_overview

移动端自动化测试概览
Makefile
2
star
98

android_re_enable_root

Android逆向:开启root
Makefile
2
star
99

python_spider_scrapy

主流Python爬虫框架:Scrapy
Makefile
2
star
100

most_intelligent_python_ide_pycharm

最智能的Python的IDE:PyCharm
Makefile
2
star