Permalink
Browse files

Preview of content check

  • Loading branch information...
marcusosterberg committed Jun 16, 2017
1 parent 47c1171 commit 4b38e53333dff454f82fc6cb61769ea38cb2c80f
View
@@ -91,3 +91,5 @@ ENV/
# verifierad.nu specific settings
/_privatekeys.py
/tmp/*
*.tmp
View
@@ -0,0 +1,106 @@
# coding: utf-8
""" WARNING! Just a preview!
Content checker
This check performs content analysis.
No API key required. But uses readability if not - https://pypi.python.org/pypi/readability
"""
import sys
import subprocess
from datetime import datetime
from bs4 import BeautifulSoup
import helper
def content_check(check_url, strategy='mobile'):
"""
Checks the Pagespeed Insights with Google
In addition to the 'mobile' strategy there is also 'desktop' aimed at the desktop user's preferences
Returns a dictionary of the results.
attributes: check_url, strategy
"""
check_url = check_url.strip()
return_dict = {}
try:
get_content = helper.httpRequestGetContent(check_url)
soup = BeautifulSoup(get_content, "html.parser")
# soup = soup.encode("ascii")
pagetitle = soup.title.string
return_dict['pagetitle'] = pagetitle
pagetitle_length = len(pagetitle)
return_dict['pagetitle_length'] = pagetitle_length
num_links = len(soup.find_all('a'))
return_dict['num_links'] = num_links
# checking images
num_images = len(soup.find_all('img'))
return_dict['num_images'] = num_images
images = soup.find_all('img')
i = 0
for image in images:
if image.get('alt') is not None:
i = i + 1
# print(image.get('alt')) # for debugging
num_images_without_alt = num_images - i
return_dict['num_images_without_alt'] = num_images_without_alt
try:
meta_desc = soup.findAll(attrs={"name":"description"})[0]['content']
return_dict['meta_desc'] = meta_desc
meta_desc_length = len(meta_desc)
return_dict['meta_desc_length'] = meta_desc_length
except IndexError:
return_dict['meta_desc'] = ''
return_dict['meta_desc_length'] = 0
pass
except:
print('Meta desc check for URL \'{0}\' failed, reason: {1}'.format(check_url, sys.exc_info()[0]))
# checking readability
[s.extract() for s in soup(['style', 'script', '[document]', 'head', 'title'])]
visible_text = soup.getText()
file_name = 'tmp/{0}_{1}_{2}.txt'.format(str(datetime.today())[:10], 'contentCheck',
helper.getUniqueId())
helper.writeFile(file_name, visible_text)
# readability = os.system('readability {0}'.format(file_name))
readability = subprocess.check_output(['readability', file_name])
readability = readability.decode("utf-8")
helper.delete_file(file_name)
# helper.writeFile('tmp/readability-output.txt', readability) # uncomment if you'd like to see the readability output
for line in readability.split('\n'):
# first_entry = line.split(':')[0].strip()
try:
return_dict[line.split(':')[0].strip()] = line.split(':')[1].strip()
except:
pass
# print(meta_desc)
except: # breaking and hoping for more luck with the next URL
print('Error! Unfortunately the request for URL "{0}" failed, message:\n{1}'.format(check_url, sys.exc_info()[0]))
pass
return return_dict
# För svenska
# Under 25 Barnböcker.
# 25 till 30 Enkla texter.
# 30 till 40 Normaltext / skönlitteratur.
# 40 till 50 Sakinformation, till exempel Wikipedia.
# 50 till 60 Facktexter.
# Över 60 Svåra facktexter / forskning / avhandlingar.
# för engelska
# https://en.wikipedia.org/wiki/Flesch%E2%80%93Kincaid_readability_tests
View
@@ -1,27 +1,32 @@
http://www.vgregion.se/sitemap.xml
https://www.narhalsan.se/sitemap.xml
https://folktandvarden.vgregion.se/sitemap.xml
http://vastarvet.se/sitemap.xml
http://www.vitlyckemuseum.se/sitemap.xml
http://sv.opera.se/sitemap.xml
http://regionservice.vgregion.se/sitemap.xml
http://hh.vgregion.se/sitemap.xml
http://www.billstromska.fhsk.se/sitemap.xml
http://www.kulturivast.se/sitemap.xml
http://www.dals.fhsk.se/sitemap.xml
http://analys.vgregion.se/sitemap.xml
https://folktandvarden.vgregion.se/sitemap.xml
http://www.forsviksbruk.se/sitemap.xml
http://frisktandvarden.vgregion.se/sitemap.xml
http://www.fristads.fhsk.se/sitemap.xml
http://www.grebbestads.fhsk.se/sitemap.xml
http://vastfast.vgregion.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_vastfast.vgregion.se_sv_.xml
http://www.regionteatervast.se/sitemap.xml
http://www.forsviksbruk.se/sitemap.xml
http://www.vgrfolkhogskolor.se/sitemap.xml
http://www.vasttrafik.se/KnowITPlugIn/SearchEngineSitemaps.SiteMapIndex.aspx?SiteMapIndex_www.vasttrafik.se_en_.xml
http://kolinfo.vgregion.se/sitemap.xml
https://www.narhalsan.se/sitemap.xml
http://regionservice.vgregion.se/sitemap.xml
https://www.sahlgrenska.se/sitemap.xml
http://www.vgregion.se/sitemap.xml
http://dialys.vgregion.se/sitemap.xml
http://sas.vgregion.se/sitemap.xml
https://www.gothiaforum.com/sitemap.xml
http://vasterhavsveckan.se/sitemap_index.xml
http://www.samverkanvg.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_www.samverkanvg.se_sv_.xml
http://www.ebiblioteket.vgregion.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_www.ebiblioteket.vgregion.se_sv_.xml
http://www.valdinararelationer.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_www.valdinararelationer.se_sv_.xml
http://www.vgrfolkhogskolor.se/sitemap.xml
http://www.vitlyckemuseum.se/sitemap.xml
http://vastarvet.se/sitemap.xml
http://vastfast.vgregion.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_vastfast.vgregion.se_sv_.xml
http://www.t-d.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_www.t-d.se_sv_.xml
https://www.sahlgrenska.se/sitemap.xml
http://www.vasttrafik.se/KnowITPlugIn/SearchEngineSitemaps.SiteMapIndex.aspx?SiteMapIndex_www.vasttrafik.se_sv_.xml
http://www.valdinararelationer.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_www.valdinararelationer.se_sv_.xml
http://www.vasttrafik.se/KnowITPlugIn/SearchEngineSitemaps.SiteMapIndex.aspx?SiteMapIndex_www.vasttrafik.se_sv_.xml
http://hh.vgregion.se/sitemap.xml
http://sv.opera.se/sitemap.xml
http://www.samverkanvg.se/EPiServerUtilPlugIn/sitemapindex.aspx?sitemapindex_www.samverkanvg.se_sv_.xml
sitemap.xml
https://vgrkommenterar.wordpress.com/sitemap.xml
http://www.fossiloberoendevg.se/sitemap_index.xml
http://vasterhavsveckan.se/sitemap_index.xml
https://vgrutv.wordpress.com/sitemap.xml
https://www.gothiaforum.com/sitemap.xml
http://www.kulturivast.se/sitemap.xml
@@ -0,0 +1,200 @@
http://eskilstuna.se/sitemap.xml
http://www.falkenberg.se/sitemap.xml
http://www.falun.se/sitemap.xml
http://www.gullspang.se/sitemap.xml
http://www.gavle.se/sitemap.xml
http://www.gotene.se/sitemap.xml
http://www.halmstad.se/sitemap.xml
http://www.haparanda.se/sitemap.xml
http://www.havochvatten.se/sitemap.xml
http://www.hultsfred.se/sitemap.xml
http://www.harnosand.se/sitemap.xml
http://www.karlshamn.se/sitemap.xml
http://www.lerum.se/sitemap.xml
http://www.lidingo.se/sitemap.xml
http://www.lidkoping.se/sitemap.xml
http://www.linkoping.se/sitemap.xml
http://www.lulea.se/sitemap.xml
http://www.lansstyrelsen.se/vastragotaland/sitemap.xml
http://www.mariestad.se/sitemap.xml
http://www.olofstrom.se/sitemap.xml
http://www.orust.se/sitemap.xml
http://www.oxelosund.se/sitemap.xml
http://www.pitea.se/sitemap.xml
http://www.raa.se/sitemap.xml
http://www.riksdagen.se/sitemap.xml
http://www.sala.se/sitemap.xml
http://www.salem.se/sitemap.xml
http://www.sandviken.se/sitemap.xml
http://www.stockholm.se/sitemap.xml
http://www.stralsakerhetsmyndigheten.se/sitemap.xml
http://www.swedac.se/sitemap.xml
http://www.sunne.se/sitemap.xml
http://www.sodertalje.se/sitemap.xml
http://www.tierp.se/sitemap.xml
http://www.tomelilla.se/sitemap.xml
http://www.torsby.se/sitemap.xml
http://www.tranas.se/sitemap.xml
http://www.trollhattan.se/sitemap.xml
http://www.toreboda.se/sitemap.xml
http://www.uddevalla.se/sitemap.xml
http://www.upplands-bro.se/sitemap.xml
http://www.varberg.se/sitemap.xml
http://www.vetlanda.se/sitemap.xml
http://www.vargarda.se/sitemap.xml
http://www.varmdo.se/sitemap.xml
http://www.vastervik.se/sitemap.xml
http://www.vgregion.se/sitemap.xml
http://www.ale.se/sitemap.xml
http://www.alvesta.se/sitemap.xml
http://www.arbetsgivarverket.se/sitemap.xml
http://www.av.se/sitemap.xml
http://www.arboga.se/sitemap.xml
http://www.arvsfonden.se/sitemap.xml
http://www.borgholm.se/sitemap.xml
http://www.epn.se/sitemap.xml
http://www.datainspektionen.se/sitemap.xml
http://www.do.se/sitemap.xml
http://www.ehalsomyndigheten.se/sitemap.xml
http://www.esv.se/sitemap.xml
http://www.emmaboda.se/sitemap.xml
http://www.fmi.se/sitemap.xml
http://www.finanspolitiskaradet.se/sitemap.xml
http://www.finspang.se/sitemap.xml
http://www.ap4.se/sitemap.xml
http://www.flen.se/sitemap.xml
http://www.folkebernadotteacademy.se/sitemap.xml
http://www.fas.se/sitemap.xml
http://www.fargelanda.se/sitemap.xml
http://www.fmv.se/sitemap.xml
http://www.forsvarsmakten.se/sitemap.xml
http://www.lansrattenigoteborg.domstol.se/sitemap.xml
http://www.lansrattenivasternorrland.domstol.se/sitemap.xml
http://www.lansrattenijonkoping.domstol.se/sitemap.xml
http://www.lansrattenivarmland.domstol.se/sitemap.xml
http://www.lansratteninorrbotten.domstol.se/sitemap.xml
http://www.lansratteniskane.domstol.se/sitemap.xml
http://www.lansrattenistockholm.domstol.se/sitemap.xml
http://www.lansratteniuppsala.domstol.se/sitemap.xml
http://www.grastorp.se/sitemap.xml
http://www.goteborg.se/sitemap.xml
http://www.hallsberg.se/sitemap.xml
http://www.harpsund.se/sitemap.xml
http://www.hjo.se/sitemap.xml
http://www.hsan.se/sitemap.xml
http://www.hb.se/sitemap.xml
http://www.hh.se/sitemap.xml
http://www.his.se/sitemap.xml
http://www.hkr.se/sitemap.xml
http://www.hv.se/sitemap.xml
http://www.hoor.se/sitemap.xml
http://www.isp.se/sitemap.xml
http://www.justitiekanslern.se/sitemap.xml
http://www.jarfalla.se/sitemap.xml
http://www.jonkoping.se/sitemap.xml
http://www.karlsborg.se/sitemap.xml
http://www.ki.se/sitemap.xml
http://www.katrineholm.se/sitemap.xml
http://www.kil.se/sitemap.xml
http://www.kommers.se/sitemap.xml
http://www.konj.se/sitemap.xml
http://www.konsumentverket.se/sitemap.xml
http://www.kristinehamn.se/sitemap.xml
http://www.kumla.se/sitemap.xml
http://www.kungsor.se/sitemap.xml
http://www.kungalv.se/sitemap.xml
http://www.landskrona.se/sitemap.xml
http://www.lg.se/sitemap.xml
http://www.liv.se/sitemap.xml
http://www.lvn.se/sitemap.xml
http://www.laxa.se/sitemap.xml
http://www.slv.se/sitemap.xml
http://www.lfv.se/sitemap.xml
http://www.lu.se/sitemap.xml
http://www.lysekil.se/sitemap.xml
http://www.malmo.se/sitemap.xml
http://www.markaryd.se/sitemap.xml
http://www.miun.se/sitemap.xml
http://www.munkedal.se/sitemap.xml
http://www.munkfors.se/sitemap.xml
http://www.tillvaxtanalys.se/sitemap.xml
http://www.vardanalys.se/sitemap.xml
http://www.monsteras.se/sitemap.xml
http://www.nordanstig.se/sitemap.xml
http://www.nai.uu.se/sitemap.xml
http://www.norrtalje.se/sitemap.xml
http://www.nykoping.se/sitemap.xml
http://www.nynashamn.se/sitemap.xml
http://www.namndenmotdiskriminering.se/sitemap.xml
http://www.polar.se/sitemap.xml
http://www.polisen.se/vasternorrland/sitemap.xml
http://www.polisen.se/blekinge/sitemap.xml
http://www.polisen.se/dalarna/sitemap.xml
http://www.polisen.se/Gotlands_lan/sitemap.xml
http://www.polisen.se/Gavleborg/sitemap.xml
http://www.polisen.se/halland/sitemap.xml
http://www.polisen.se/jamtland/sitemap.xml
http://www.polisen.se/kronoberg/sitemap.xml
http://www.polisen.se/norrbotten/sitemap.xml
http://www.polisen.se/skane/sitemap.xml
http://www.polisen.se/sodermanland/sitemap.xml
http://www.polisen.se/varmland/sitemap.xml
http://www.polisen.se/vasterbotten/sitemap.xml
http://www.polisen.se/vastmanland/sitemap.xml
http://www.polisen.se/Vastra_Gotaland/sitemap.xml
http://www.polisen.se/Orebro_lan/sitemap.xml
http://www.polisen.se/ostergotland/sitemap.xml
http://www.epn.se/goeteborg/om-naemnden/sitemap.xml
http://www.epn.se/linkoeping/om-naemnden/sitemap.xml
http://www.epn.se/lund/om-naemnden/sitemap.xml
http://www.epn.se/stockholm/om-naemnden/sitemap.xml
http://www.epn.se/umeaa/om-naemnden/sitemap.xml
http://www.epn.se/uppsala/om-naemnden/sitemap.xml
http://www.riksgalden.se/sitemap.xml
http://www.polisen.se/sitemap.xml
http://www.riksrevisionen.se/sitemap.xml
http://www.rmv.se/sitemap.xml
http://www.rattvik.se/sitemap.xml
http://www.sameskolstyrelsen.se/sitemap.xml
http://www.sjofartsverket.se/sitemap.xml
http://www.svo.se/sitemap.xml
http://www.overklagandenamnden.se/sitemap.xml
http://www.sotenas.se/sitemap.xml
http://www.spsm.se/sitemap.xml
http://www.arkitekturmuseet.se/sitemap.xml
http://www.energimyndigheten.se/sitemap.xml
http://www.sfhm.se/sitemap.xml
http://www.sjv.se/sitemap.xml
http://www.skl.polisen.se/sitemap.xml
http://www.statensmedierad.se/sitemap.xml
http://www.smvk.se/sitemap.xml
http://www.skolinspektionen.se/sitemap.xml
http://www.vti.se/sitemap.xml
http://www.statskontoret.se/sitemap.xml
http://www.svalov.se/sitemap.xml
http://www.si.se/sitemap.xml
http://www.slu.se/sitemap.xml
http://www.sakerhetspolisen.se/sitemap.xml
http://www.savsjo.se/sitemap.xml
http://webappl.web.sh.se/sitemap.xml
http://www.tillvaxtverket.se/sitemap.xml
http://www.torsas.se/sitemap.xml
http://www.foi.se/sitemap.xml
http://www.trafa.se/sitemap.xml
http://www.ap3.se/sitemap.xml
http://www.tullverket.se/sitemap.xml
https://www.mucf.se/sitemap.xml
http://www.uhr.se/sitemap.xml
http://www.uk-ambetet.se/sitemap.xml
http://www.vadstena.se/sitemap.xml
http://www.vaggeryd.se/sitemap.xml
http://www.vallentuna.se/sitemap.xml
http://www.vansbro.se/sitemap.xml
http://www.vr.se/sitemap.xml
http://www.vingaker.se/sitemap.xml
http://www.varnamo.se/sitemap.xml
http://www.vll.se/sitemap.xml
http://www.astorp.se/sitemap.xml
http://www.alvsbyn.se/sitemap.xml
http://www.orkelljunga.se/sitemap.xml
http://www.osthammar.se/sitemap.xml
View
@@ -596,7 +596,7 @@ http://www.uddevallatingsratt.domstol.se
http://www.ulricehamn.se
http://www.umeatingsratt.domstol.se
http://www.umu.se
http://www.ungdomsstyrelsen.se
https://www.mucf.se
http://www.uhr.se
http://www.uk-ambetet.se
http://www.uu.se
View
@@ -26,6 +26,8 @@ def writeFile(file, content):
f.close()
def delete_file(file):
os.remove(file)
def getUniqueId(length=5):
return str(uuid.uuid1()).replace('-', '')[:length]
@@ -130,6 +132,8 @@ def httpRequestGetContent(url):
# the url indicates that it is compressed using Gzip
return getGzipedContentFromUrl(url)
timeout_in_seconds = 30
try:
a = requests.get(url)
Oops, something went wrong.

0 comments on commit 4b38e53

Please sign in to comment.