{"id":22,"date":"2020-05-29T12:57:26","date_gmt":"2020-05-29T12:57:26","guid":{"rendered":"https:\/\/wordlift.io\/ng\/?p=22"},"modified":"2020-05-29T13:10:04","modified_gmt":"2020-05-29T13:10:04","slug":"serp-analysis-with-ai","status":"publish","type":"post","link":"https:\/\/wordlift.io\/ng\/serp-analysis-with-ai\/","title":{"rendered":"SERP Analysis with the help of AI"},"content":{"rendered":"\n<p><strong>SERP analysis<\/strong> is an essential step in the process of <em>content optimization to outrank the competition<\/em> on Google. In this blog post I will share <strong>a new way to run SERP analysis using machine learning<\/strong> and a simple python program that you can run on Google Colab.\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td><img decoding=\"async\" width=\"120\" height=\"120\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/colab_favicon_256px.png\" class=\"wp-image-23\" alt=\"\" style=\"width: 120px;\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/colab_favicon_256px.png 256w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/colab_favicon_256px-150x150.png 150w\" sizes=\"(max-width: 120px) 100vw, 120px\" \/><\/td><td>Jump directly to the code: <strong><a rel=\"noreferrer noopener\" href=\"https:\/\/colab.research.google.com\/drive\/1k6T_ic0gZw8cOM-fbZkJ2GAd9y-_VivW\" target=\"_blank\">Google SERP Analysis using Natural Language Processing<\/a><\/strong><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>SERP (Search Engine Result Page) analysis is part of keyword research and helps you understand if the query that you identified is relevant for your business goals. More importantly by analyzing how results are organized we can understand how Google is interpreting a specific query.&nbsp;<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><strong>What is the intention of the user<\/strong>&nbsp;<strong>making that search?<\/strong><\/p><p><strong>What search intent Google is associating with that particular query<\/strong>?<\/p><\/blockquote>\n\n\n\n<p>The investigative work required to analyze the top results provide an answer to these questions and guide us to improve (or create) the content that best fit the searcher.&nbsp;<\/p>\n\n\n\n<p>While there is an abundance of keyword research tools that provide SERP analysis functionalities, my particular interest lies in&nbsp;<strong>understanding the semantic data layer that Google uses to rank results<\/strong>&nbsp;and&nbsp;<strong>what can be inferred using natural language understanding<\/strong>&nbsp;from the corpus of results behind a query. This might also shed some light on how Google does fact extraction and verification for its own knowledge graph starting from the content we write on webpages.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Falling down the rabbit hole<\/h2>\n\n\n\n<p>It all started when&nbsp;<a href=\"https:\/\/wordlift.io\/blog\/en\/entity\/jason-m-barnard\/\">Jason Barnard<\/a>&nbsp;and I started to chat about E-A-T and what technique marketers could use&nbsp;<strong>to&nbsp;<a href=\"https:\/\/wordlift.io\/academy-entries\/e-a-t-structuring-visualizing-evaluating\/\">\u201cread and visualize\u201d Brand SERPs<\/a><\/strong>. Jason is a brilliant&nbsp;mind and has a profound understanding of Google\u2019s algorithms, he has been studying, tracking and analyzing Brand SERPs since 2013. While Brand SERPs are a category on their own the process of interpreting search results remains the same whether you are comparing the personal brands of \u201c<em>Andrea Volpini<\/em>\u201d and \u201c<em>Jason Barnard<\/em>\u201d or analyzing the different shades of meaning between \u201c<em>making homemade pizza<\/em>\u201d and \u201c<em>make pizza at home<\/em>\u201d.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hands-on with SERP analysis<\/h2>\n\n\n\n<p>In this&nbsp;<a href=\"https:\/\/github.com\/norvig\/pytudes\">pytude<\/a>&nbsp;(simple python program) as Peter Norvig would call it, the plan goes as follow:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>we will&nbsp;<strong>crawl Google\u2019s top (10-15-20) results<\/strong>&nbsp;and&nbsp;<strong>extract the text behind each webpage<\/strong>,&nbsp;<\/li><li>we will&nbsp;<strong>look at the terms and the concepts of the corpus of text resulting from the<\/strong>&nbsp;download, parsing, and scraping of web page data (main body text) of all the&nbsp;<strong>results<\/strong>&nbsp;together,&nbsp;<\/li><li>we will then&nbsp;<strong>compare two queries<\/strong>&nbsp;\u201c<em>Jason Barnard<\/em>\u201d and \u201c<em>Andrea Volpini<\/em>\u201d in our example and we will<em>&nbsp;visualize<\/em>&nbsp;the most frequent terms for each query within the same semantic space,&nbsp;<\/li><li>After that we&nbsp; will&nbsp;<strong>focus on<\/strong>&nbsp;\u201c<em>Jason Barnard<\/em>\u201d in order to understand the terms that make the top 3 results unique from all the other results,&nbsp;<\/li><li>Finally&nbsp;<strong>using a sequence-to-sequence model we will summarize all the top results for Jason<\/strong>&nbsp;in a featured snippet like text (<em>this is indeed impressive<\/em>),<\/li><li>At last we will&nbsp;<strong>build a question-answering model<\/strong>&nbsp;<strong>on top of the corpus of text related to<\/strong>&nbsp;\u201c<em>Jason Barnard<\/em>\u201d to see what facts we can extract from these pages that can extend or validate information in Google\u2019s knowledge graph.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Text mining Google\u2019s SERP<\/h3>\n\n\n\n<p>Our text data (Web corpus) is the result of two queries made on Google.com (you can change this parameter in the Notebook) and of the extraction of all the text behind these webpages. Depending on the website we might or might not be able to collect the text. The two queries I worked with are \u201c<em>Jason Barnard<\/em>\u201d and \u201c<em>Andrea Volpini<\/em>\u201d but you can query of course whatever you like.&nbsp;&nbsp;&nbsp;<\/p>\n\n\n\n<p>One of the most crucial work, once the Web corpus has been created, in the text mining field is\u00a0<strong>to present data visually<\/strong>. Using\u00a0<a href=\"https:\/\/wordlift.io\/blog\/en\/entity\/natural-language-processing\/\">natural language processing<\/a>\u00a0(NLP) we can explore these SERPs from different angles and levels of detail. Using Scattertext\u00a0 we\u2019re immediately able to see\u00a0<strong>what terms\u00a0<\/strong>(from the combination of the two queries)<strong>\u00a0differentiate the corpus from a general English corpus.\u00a0<\/strong>What are, in other words, the most characteristic keywords of the corpus.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"318\" height=\"496\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/text-mining.png\" alt=\"\" class=\"wp-image-24\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/text-mining.png 318w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/text-mining-192x300.png 192w\" sizes=\"(max-width: 318px) 100vw, 318px\" \/><figcaption><em>The most characteristics terms in the corpus.<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<p>And you can see here besides the names (volpini, jasonbarnard, cyberandy) other relevant\u00a0 terms that characterize both Jason and myself. Boowa a blue dog and Kwala a yellow koala will guide us throughout this investigation so let me first introduce them: they are two cartoon characters that Jason and his wife created back in the nineties. They are still prominent as they appear on Jason\u2019s article on a Wikipedia as part of his career as cartoon maker.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"600\" height=\"408\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/boowa-kwala.png\" alt=\"\" class=\"wp-image-25\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/boowa-kwala.png 600w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/boowa-kwala-480x326.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 600px, 100vw\" \/><figcaption><em>Boowa and Kwala<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Visualizing term associations in two Brand SERPs<\/h3>\n\n\n\n<p>In&nbsp; the scatter plot below we have&nbsp;<strong>on the y-axis the category<\/strong>&nbsp;\u201c<em>Jason Barnard<\/em>\u201d (our first query), and&nbsp;<strong>on the x-axis the category<\/strong>&nbsp;for \u201c<em>Andrea Volpini<\/em>\u201d. On the top right corner of the chart we can see the most frequent terms on both SERPs \u2013&nbsp;<strong>the semantic junctions between Jason and myself according to Google<\/strong>.<\/p>\n\n\n\n<p>Not surprisingly there you will find terms like: Google, Knowledge, Twitter and&nbsp;<a href=\"https:\/\/wordlift.io\/blog\/en\/entity\/search-engine-optimization\/\">SEO<\/a>. On the top left side we can spot Boowa and Kwala for Jason and on the bottom right corner&nbsp;<a href=\"https:\/\/wordlift.io\/blog\/en\/entity\/artificial-intelligence\/\">AI<\/a>, WordLift and knowledge graph for myself. &nbsp;<\/p>\n\n\n\n<p>To extract the entities we use spaCy and\u00a0<strong><a href=\"https:\/\/github.com\/JasonKessler\/scattertext\/blob\/master\/README.md\">an extraordinary library Jason Kassler<\/a><\/strong>\u00a0called\u00a0<strong>Scattertext<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"980\" height=\"519\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-1-980x519-1.png\" alt=\"\" class=\"wp-image-26\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-1-980x519-1.png 980w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-1-980x519-1-480x254.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 980px, 100vw\" \/><figcaption><em>Visualizing the terms related to \u201cJason Barnard\u201d (y-axis) and \u201cAndrea Volpini\u201d (x-asix). The visualization is interactive and allows us to zoom on a specific term like \u201cseo\u201d.\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/wordlift.io\/blog\/wp-content\/uploads\/2020\/04\/jason-andy-serp.html\" target=\"_blank\">Try it<\/a>.<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Comparing the terms that make the top 3 results unique<\/h3>\n\n\n\n<p>When analyzing the SERP our goal is to understand how Google is interpreting the intent of the user and what terms Google considers relevant for that query. To do so, in the experiment, we split the corpus of the results related to Jason between the content that ranks in position 1, 2 and 3 and everything else.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"980\" height=\"521\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-980x521-1.png\" alt=\"\" class=\"wp-image-27\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-980x521-1.png 980w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-980x521-1-480x255.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 980px, 100vw\" \/><\/figure>\n\n\n\n<p>On the top the terms extracted from the top 3 results and below everything else. Open the chart on a separate tab from\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/wordlift.io\/blog\/wp-content\/uploads\/2020\/04\/top-results.html\" target=\"_blank\">here<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Summarizing Google\u2019s Search Results<\/h2>\n\n\n\n<p>When creating well-optimized content professional SEOs analyze the top results in order to analyze the search intent and to get an overview of the competition. As Gianluca Fiorelli, whom I personally admire a lot, would say; it is vital to\u00a0<em>look at it directly<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-embed-twitter aligncenter wp-block-embed is-type-rich is-provider-twitter\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\"><p lang=\"en\" dir=\"ltr\">It surprises a lot how many SEOs rarely directly look at the SERPs, but do that only through \u201cthe ? \u201c of a tool. Shame! Look at them &amp; youl\u2019ll:<br>1) see clearly the search intent detected by Google<br>2) see how to format your content<br>3) find On SERPS SEO opportunities <a href=\"https:\/\/t.co\/Wr4OYAcmiG\">pic.twitter.com\/Wr4OYAcmiG<\/a><\/p>&mdash; Gianluca Fiorelli at ? (@gfiorelli1) <a href=\"https:\/\/twitter.com\/gfiorelli1\/status\/1054632608401887232?ref_src=twsrc%5Etfw\">October 23, 2018<\/a><\/blockquote><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p>Since we now have the web corpus of all the results I decided to let the AI do the hard work in order&nbsp;<strong>to \u201cread\u201d all the content related to Jason and to create an easy to read summary<\/strong>. I\u2019ve experimented quite a lot lately with both extractive and abstractive summarization techniques and I found that, when dealing with an heterogeneous multi-genre corpus like the one we get from scraping web results,&nbsp;<a href=\"https:\/\/arxiv.org\/abs\/1910.13461\"><strong>BART<\/strong><\/a>&nbsp;(a&nbsp;<em>sequence-to-sequence text model<\/em>) does an excellent job in&nbsp;<strong>understanding the text<\/strong>&nbsp;and&nbsp;<strong>generating abstractive summaries<\/strong>&nbsp;(for English).<\/p>\n\n\n\n<p>Let\u2019s it in action on Jason\u2019s results. Here is where the fun begins. Since I was working with\u00a0<a href=\"https:\/\/kalicube.pro\/\">Jason Barnard a.k.a the Brand SERP Guy<\/a>, Jason was able to update his own Brand SERP as if Google was his own CMS ? and we could immediately see from the summary how these changes where impacting what Google was indexing.<\/p>\n\n\n\n<p>Here below the transition from Jason marketer, musicians and cartoon maker to Jason full-time digital marketer.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"980\" height=\"513\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-2-980x513-1.png\" alt=\"\" class=\"wp-image-28\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-2-980x513-1.png 980w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-2-980x513-1-480x251.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 980px, 100vw\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Can we reverse-engineer Google\u2019s answer box?<\/h2>\n\n\n\n<p>As Jason and I were progressing with the experiment I also decided to see how close\u00a0<strong>a Question Answering System running Google , pre-trained models of\u00a0<a href=\"https:\/\/wordlift.io\/blog\/en\/entity\/bert\/\">BERT<\/a><\/strong>, could get to Google\u2019s answer box for the Jason-related question below.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"749\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-3-1024x749-1.png\" alt=\"\" class=\"wp-image-29\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-3-1024x749-1.png 1024w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-3-1024x749-1-980x717.png 980w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-3-1024x749-1-480x351.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw\" \/><\/figure>\n\n\n\n<p>Quite impressively, as the web corpus was indeed, the same that Google uses, I could get exactly the same result.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"630\" src=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-4-1024x630-1.png\" alt=\"\" class=\"wp-image-30\" srcset=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-4-1024x630-1.png 1024w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-4-1024x630-1-980x603.png 980w, https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/image-4-1024x630-1-480x295.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw\" \/><\/figure>\n\n\n\n<p>A fine-tuning task on SQuAD for the corpus of result of \u201cJason Barnard\u201d<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>This is interesting as it tells us that&nbsp;<strong>we can use question-answering systems to validate if the content that we\u2019re producing responds to the question that we\u2019re targeting<\/strong>.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Lesson we learned<\/h2>\n\n\n\n<p><strong>We can produce semantically organized knowledge from raw unstructured content<\/strong>&nbsp;much like a modern search engine would do. By reverse engineering the semantic extraction layer using NER from Google\u2019s top results&nbsp;<strong>we can \u201csee\u201d the unique terms that make web documents stand out on a given query<\/strong>.<\/p>\n\n\n\n<p><strong>We can also analyze the evolution over time and space<\/strong>&nbsp;(the same query in a different region can have a different set of results)&nbsp;<strong>of<\/strong>&nbsp;<strong>these terms<\/strong>.<\/p>\n\n\n\n<p>While with keyword research tools we always see a \u2018static\u2019 representation of the SERP by running our own analysis pipeline we realize that these results are constantly changing as new content surfaces the index and as Google\u2019s neural mind improves its understanding of the world and of the person making the query.<\/p>\n\n\n\n<p>By comparing different queries we can find aspects in common and uniqueness that can help us inform the content strategy (and the content model behind the strategy).&nbsp;<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Are you ready to&nbsp;<strong>run your first SERP Analysis<\/strong>&nbsp;using Natural Language Processing?<\/p><p>Get in contact with our&nbsp;<a href=\"https:\/\/wordlift.io\/seo-management-service\/\"><strong>SEO management service<\/strong><\/a>&nbsp;team now!<\/p><\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\">Credits<\/h4>\n\n\n\n<p>All of this wouldn\u2019t happen without Jason\u2019s challenge of \u201cvisualizing\u201d E-A-T and brand serps and this work is dedicated to him and to the wonderful community of marketers, SEOs, clients and partners that are supporting WordLift.&nbsp;A big thank you also goes to the open-source technologies used in this experiment:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/python-googlesearch.readthedocs.io\/en\/latest\/\">Google Search library<\/a>&nbsp;by Mario Vilas<\/li><li><a href=\"http:\/\/adrien.barbaresi.eu\/blog\/trafilatura-main-text-content-python.html\">Trafilatura<\/a>&nbsp;by Adrien Barbaresi<\/li><li>Jason S. Kessler.&nbsp;<a href=\"https:\/\/github.com\/JasonKessler\/scattertext#citation\">Scattertext<\/a>: a Browser-Based Tool for Visualizing how Corpora Differ. ACL System Demonstrations. 2017. Link to preprint:&nbsp;<a href=\"https:\/\/arxiv.org\/abs\/1703.00565\">arxiv.org\/abs\/1703.00565<\/a><\/li><li>BERT&nbsp;with pre-trained model for&nbsp;<em>questions answering<\/em>&nbsp;by&nbsp;<a href=\"https:\/\/github.com\/google-research\/bert\">Google Research Team<\/a>&nbsp;and made easy to use by&nbsp;<a href=\"https:\/\/twitter.com\/huggingface\">@HuggingFace<\/a>&nbsp;?<\/li><li>BART developed&nbsp;<a href=\"https:\/\/arxiv.org\/abs\/1910.13461\">by Lewis et al. 2019<\/a>&nbsp;and made easy to use by&nbsp;<a href=\"https:\/\/twitter.com\/huggingface\">@HuggingFace<\/a>&nbsp;?<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>SERP analysis is an essential step in the process of content optimization to outrank the competition on Google. In this blog post I will share a new way to run SERP analysis using machine learning and a simple python program that you can run on Google Colab.\u00a0 Jump directly to the code: Google SERP Analysis &hellip; <a href=\"https:\/\/wordlift.io\/ng\/serp-analysis-with-ai\/\">Continued<\/a><\/p>\n","protected":false},"author":135,"featured_media":33,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"wl_entities_gutenberg":"","_et_pb_use_builder":"off","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[4],"tags":[],"wl_entity_type":[33],"class_list":["post-22","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-the-rd-process","wl_entity_type-article"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SERP Analysis with the help of AI by Andrea Volpini<\/title>\n<meta name=\"description\" content=\"A pythonic way to run Google&#039;s SERP analysis using natural language processing and a simple python program that you can run on Google Colab [CODE included]\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SERP Analysis with the help of AI by Andrea Volpini\" \/>\n<meta property=\"og:description\" content=\"A pythonic way to run Google&#039;s SERP analysis using natural language processing and a simple python program that you can run on Google Colab [CODE included]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/\" \/>\n<meta property=\"og:site_name\" content=\"WordLift New Generation\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-29T12:57:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-05-29T13:10:04+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"1200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andrea Volpini\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrea Volpini\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wordlift.io\/ng\/serp-analysis-with-ai\/\",\"url\":\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/\",\"name\":\"SERP Analysis with the help of AI by Andrea Volpini\",\"isPartOf\":{\"@id\":\"https:\/\/wordlift.io\/ng\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png\",\"datePublished\":\"2020-05-29T12:57:26+00:00\",\"dateModified\":\"2020-05-29T13:10:04+00:00\",\"author\":{\"@id\":\"https:\/\/wordlift.io\/ng\/#\/schema\/person\/3534f98012ac16a1c70cda6a3f869ec9\"},\"description\":\"A pythonic way to run Google's SERP analysis using natural language processing and a simple python program that you can run on Google Colab [CODE included]\",\"breadcrumb\":{\"@id\":\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#primaryimage\",\"url\":\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png\",\"contentUrl\":\"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png\",\"width\":1200,\"height\":1200,\"caption\":\"Visualizing Google SERP with AI\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/wordlift.io\/ng\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SERP Analysis with the help of AI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wordlift.io\/ng\/#website\",\"url\":\"https:\/\/wordlift.io\/ng\/\",\"name\":\"WordLift New Generation\",\"description\":\"The Future of AI-Powered SEO\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wordlift.io\/ng\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/wordlift.io\/ng\/#\/schema\/person\/3534f98012ac16a1c70cda6a3f869ec9\",\"name\":\"Andrea Volpini\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/wordlift.io\/ng\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6b9d3d311b50a8749201fe4b318907a8?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6b9d3d311b50a8749201fe4b318907a8?s=96&d=blank&r=g\",\"caption\":\"Andrea Volpini\"},\"url\":\"https:\/\/wordlift.io\/ng\/author\/andrea\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SERP Analysis with the help of AI by Andrea Volpini","description":"A pythonic way to run Google's SERP analysis using natural language processing and a simple python program that you can run on Google Colab [CODE included]","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/","og_locale":"en_US","og_type":"article","og_title":"SERP Analysis with the help of AI by Andrea Volpini","og_description":"A pythonic way to run Google's SERP analysis using natural language processing and a simple python program that you can run on Google Colab [CODE included]","og_url":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/","og_site_name":"WordLift New Generation","article_published_time":"2020-05-29T12:57:26+00:00","article_modified_time":"2020-05-29T13:10:04+00:00","og_image":[{"width":1200,"height":1200,"url":"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png","type":"image\/png"}],"author":"Andrea Volpini","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Andrea Volpini","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wordlift.io\/ng\/serp-analysis-with-ai\/","url":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/","name":"SERP Analysis with the help of AI by Andrea Volpini","isPartOf":{"@id":"https:\/\/wordlift.io\/ng\/#website"},"primaryImageOfPage":{"@id":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#primaryimage"},"image":{"@id":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#primaryimage"},"thumbnailUrl":"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png","datePublished":"2020-05-29T12:57:26+00:00","dateModified":"2020-05-29T13:10:04+00:00","author":{"@id":"https:\/\/wordlift.io\/ng\/#\/schema\/person\/3534f98012ac16a1c70cda6a3f869ec9"},"description":"A pythonic way to run Google's SERP analysis using natural language processing and a simple python program that you can run on Google Colab [CODE included]","breadcrumb":{"@id":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wordlift.io\/blog\/en\/serp-analysis\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#primaryimage","url":"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png","contentUrl":"https:\/\/wordlift.io\/ng\/wp-content\/uploads\/sites\/2\/2020\/05\/Visualizing_Google_SERP_with_NLP_3.png","width":1200,"height":1200,"caption":"Visualizing Google SERP with AI"},{"@type":"BreadcrumbList","@id":"https:\/\/wordlift.io\/blog\/en\/serp-analysis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wordlift.io\/ng\/"},{"@type":"ListItem","position":2,"name":"SERP Analysis with the help of AI"}]},{"@type":"WebSite","@id":"https:\/\/wordlift.io\/ng\/#website","url":"https:\/\/wordlift.io\/ng\/","name":"WordLift New Generation","description":"The Future of AI-Powered SEO","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wordlift.io\/ng\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/wordlift.io\/ng\/#\/schema\/person\/3534f98012ac16a1c70cda6a3f869ec9","name":"Andrea Volpini","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wordlift.io\/ng\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6b9d3d311b50a8749201fe4b318907a8?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6b9d3d311b50a8749201fe4b318907a8?s=96&d=blank&r=g","caption":"Andrea Volpini"},"url":"https:\/\/wordlift.io\/ng\/author\/andrea\/"}]}},"_wl_alt_label":[],"wl:entity_url":"https:\/\/data.wordlift.io\/wl78784\/post\/serp_analysis_with_the_help_of_ai","_links":{"self":[{"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/posts\/22"}],"collection":[{"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/users\/135"}],"replies":[{"embeddable":true,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/comments?post=22"}],"version-history":[{"count":1,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/posts\/22\/revisions"}],"predecessor-version":[{"id":32,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/posts\/22\/revisions\/32"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/media\/33"}],"wp:attachment":[{"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/media?parent=22"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/categories?post=22"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/tags?post=22"},{"taxonomy":"wl_entity_type","embeddable":true,"href":"https:\/\/wordlift.io\/ng\/wp-json\/wp\/v2\/wl_entity_type?post=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}