Django Check SEO将为您检查网站的SEO方面,并在出现问题时提供建议。
取代django CMS用户的Yoast或SEMrush的某些功能。
换句话说,django-check-seo会告诉您有关页面SEO方面的问题。
安装
以下说明适用于使用python> = 3和django> = 2的基于djangocms的网站上的安装,或适用于使用python> = 2.7和django> = 1.8.15的基于djangocms的网站上的安装。
- 使用pipenv安装模块:
pipenv install django-check-seo
- 或点子:
pip install django-check-seo
- 将其添加到已安装的应用程序中:
"django_check_seo",
- 将其添加到您的
urls.py
(之前url(r'^', include('cms.urls')),
,否则将不起作用):
url(r"^django-check-seo/", include("django_check_seo.urls")),
- 或添加以下内容(如果您使用路径):
path("django-check-seo/", include("django_check_seo.urls")),
先决条件
本申请的需要beautifulsoup4
(> = 4.7.0), requests
,djangocms
及djangocms_page_meta
(使用Django <1.11 == 0.8.5如果)。
设定档
基本设置
基本配置(默认使用)位于django-check-seo/conf/settings.py
:
DJANGO_CHECK_SEO_SETTINGS = {
“ content_words_number ”:[ 300,600 ],
“ internal_links ”:1,
“ external_links ”:1,
“ meta_title_length ”:[ 30,60 ],
“ meta_description_length ”:[ 50,160 ],
“ keywords_in_first_words ”:50,
“max_link_depth “:3,
” max_url_length “:70,
}
如果您需要更改某些内容,只需DJANGO_CHECK_SEO_SETTINGS
在settings.py中定义一个命名为dict的字典即可。
自定义设置示例:
如果将其放在settings.py
文件中:
DJANGO_CHECK_SEO_SETTINGS = {
“ internal_links ”:25,
“ meta_title_length ”:[ 15,30 ],
}
然后,这将是应用程序使用的设置:
DJANGO_CHECK_SEO_SETTINGS = {
“ content_words_number ”:[ 300,600 ],
“ internal_links ”:25,
“ external_links ”:1,
“ meta_title_length ”:[ 15,30 ],
“ meta_description_length ”:[ 50,160 ],
“ keywords_in_first_words ”:50,
“max_link_depth “:3,
” max_url_length “:70,
}
选择主要内容(不包括页眉/页脚/ ...)
由于django-check-seo会计算主要内容中的单词数和内部链接数量之类的内容,因此仅选择页面的主要内容非常重要(页脚中的地址不是页面的主要内容)。
Django-check-seo使用css选择器的字符串(名为DJANGO_CHECK_SEO_EXCLUDE_CONTENT
)从html内容中排除不需要的html节点:
DJANGO_CHECK_SEO_EXCLUDE_CONTENT = "tag, .class, #id, tag > .child_class"
使用http
代替https
默认情况下,应用程序将尝试使用https发出请求。
要启用纯HTTP查询,可以在settings.py中添加一个名为DJANGO_CHECK_SEO_FORCE_HTTP
set 的变量True
。
例:
#强制HTTP
DJANGO_CHECK_SEO_FORCE_HTTP = True
#强制HTTPS(默认情况下,与未定义变量相同)
DJANGO_CHECK_SEO_FORCE_HTTP = False
认证方式
由于.htaccess文件(或可能使用wsgi-basic-auth),因此要测试的网站可能需要事先连接,这将阻止django-check-seo访问其html代码。
为防止这种情况,您可以在DJANGO_CHECK_SEO_AUTH
词典中(在您的网站设置中)指定登录信息(用户名/密码)。
该词典必须包含两个名为user
和的键pass
。
例:
- 在
mywebsite/settings.py
:
DJANGO_CHECK_SEO_AUTH = {
“用户”:os.getenv(“ HTACCESS_USER ”),
“通过”:os.getenv(“ HTACCESS_PASS ”),
}
- 在
.env
文件中:
export HTACCESS_USER=myusername
export HTACCESS_PASS=mypassword
WSGI_AUTH_CREDENTIALS=$HTACCESS_USER:$HTACCESS_PASS
需要截图吗?
单元测试
它们位于tests
文件夹中。
该文件launch_tests.sh
在这里用于管理为您启动的测试。您仅需要python3-venv
(对于python3 venv)和virtualenv
(对于python2 venv)才能使其正常工作。