{"id":22474,"date":"2014-09-03T08:40:54","date_gmt":"2014-09-03T06:40:54","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=22474"},"modified":"2014-09-03T08:40:54","modified_gmt":"2014-09-03T06:40:54","slug":"page-monitor-capture-webpage-and-diff-the-dom-change-with-phantomjs","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2014\/09\/03\/page-monitor-capture-webpage-and-diff-the-dom-change-with-phantomjs\/","title":{"rendered":"page-monitor &#8211; capture webpage and diff the dom change with phantomjs"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p><a href=\"https:\/\/github.com\/fouber\/page-monitor\">page-monitor <\/a>&#8211; capture webpage and diff the dom change with phantomjs<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"22475\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2014\/09\/03\/page-monitor-capture-webpage-and-diff-the-dom-change-with-phantomjs\/page-monitor\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor.png?fit=684%2C678&amp;ssl=1\" data-orig-size=\"684,678\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"page-monitor\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor.png?fit=660%2C654&amp;ssl=1\" class=\"aligncenter size-medium wp-image-22475\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor-500x495.png?resize=500%2C495&#038;ssl=1\" alt=\"page-monitor\" width=\"500\" height=\"495\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor.png?resize=500%2C495&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor.png?resize=150%2C150&amp;ssl=1 150w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/page-monitor.png?w=684&amp;ssl=1 684w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>page-monitor &#8211; capture webpage and diff the dom change with phantomjs<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"link","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_links_to":"","_links_to_target":""},"categories":[1,62,1334],"tags":[127,1330],"keyring_services":[],"class_list":["post-22474","post","type-post","status-publish","format-link","hentry","category-general","category-technology","category-web-work","tag-monitoring","tag-web-development","post_format-post-format-link"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":22169,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/07\/11\/php-fine-diff-php-library-to-diff-strings\/","url_meta":{"origin":22474,"position":0},"title":"PHP Fine Diff &#8211; PHP library to diff strings","author":"Leonid Mamchenkov","date":"July 11, 2014","format":"link","excerpt":"PHP Fine Diff - PHP library to diff strings. \u00a0I've tried a few different implementations and all of them either required an external diff program couldn't render HTML, or failed to due to enormous resource usage. \u00a0PHP Fine Diff does all I need and does it fast. \u00a0 It's also\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":24043,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/05\/04\/httpdiff-perform-the-same-request-against-two-http-servers-and-diff-the-results\/","url_meta":{"origin":22474,"position":1},"title":"httpdiff &#8211; perform the same request against two HTTP servers and diff the results","author":"Leonid Mamchenkov","date":"May 4, 2015","format":"link","excerpt":"httpdiff - perform the same request against two HTTP servers and diff the results","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"httpdiff","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2015\/05\/httpdiff-500x190.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":44332,"url":"https:\/\/mamchenkov.net\/wordpress\/2019\/10\/10\/git-tips-disable-diff-prefix\/","url_meta":{"origin":22474,"position":2},"title":"Git tips: disable diff prefix","author":"Leonid Mamchenkov","date":"October 10, 2019","format":false,"excerpt":"https:\/\/twitter.com\/brandur\/status\/1182066723337293828 Pure gold.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":26190,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/06\/15\/diff-so-fancy-the-best-lookin-diffs\/","url_meta":{"origin":22474,"position":3},"title":"diff-so-fancy &#8211; the best-lookin&#8217; diffs","author":"Leonid Mamchenkov","date":"June 15, 2016","format":false,"excerpt":"Here is a cool tool to spice up your regular boring looking diffs - diff-so-fancy. \u00a0Don't get spooked by the npm installation instructions - the meat of it is all in perl\/shell and you can install it as any other ~\/bin\/ script. \u00a0Have a look at what you are missing:","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"diff-so-fancy","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/06\/diff-so-fancy-500x448.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27280,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/01\/31\/composer-patches-simple-patches-plugin-for-composer\/","url_meta":{"origin":22474,"position":4},"title":"composer-patches &#8211; Simple patches plugin for Composer","author":"Leonid Mamchenkov","date":"January 31, 2017","format":false,"excerpt":"composer-patches is a plugin for Composer which helps with applying patches to the installed dependencies. \u00a0It supports patches from URLs, local files, and from other dependencies. I think this is absolutely brilliant! It's quite often that one finds bugs and issues in external dependencies. \u00a0Once the bug (or even the\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/01\/commit-500x263.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":28827,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/09\/30\/highlights-from-git-2-19-and-php-syntax\/","url_meta":{"origin":22474,"position":5},"title":"Highlights from Git 2.19 and PHP syntax","author":"Leonid Mamchenkov","date":"September 30, 2018","format":false,"excerpt":"GitHub blog covers the highlights from Git 2.19, which was recently released. One particular change that I want to highlight (which GitHub skipped in their highlights, but which exists in the Git release notes for this version) is the syntax pattern update for the PHP files. Let's have a look\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/09\/git-range-diff-500x243.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/22474","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=22474"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/22474\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=22474"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=22474"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=22474"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=22474"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}