The Advantages & Disadvantages of Web Scraping Data

“Knowledge is power. Data is liberating.” To realize access to one of the best pieces of data, you’re first going to need to collect some data. Web scraping, data mining and web crawling are efficient methods that assist you to simply compile and store information from websites on the internet.

In this piece we are going to investigate what’s web scraping, the benefits and disadvantages of web scraping and a few of the helpful use cases for scraping data.

What is web scraping?

Web scraping refers to creating or using a computer software to extract data from whole websites or just a few web pages. Additionally once you perform web scraping, you may either download the complete web page or key facets such because the tag or article body content for additional analysis.</p> <p>What are the benefits of web scraping for business?</p> <p>Achieve Automation</p> <p>Sturdy web scrapers permit you to automatically extract data from websites, this permits you or your co-workers to save lots of time that will’ve have in any other case been spent on mundane data assortment tasks. It also means that you can accumulate data at larger volume than a single human could ever hope to achieve.</p> <p>Also it’s doable for you to create sophisticated web bots to automate online activities with either web scraping software or using a programming language comparable to javascript, python, go or php.</p> <p>Business Intelligence & Insights</p> <p>Web scraping data from the internet lets you seek for competitor costs, monitor their marketing activity and to swiftly market research your trade online. By downloading, cleaning and analysing data at significant quantity, you’ll be able to build a better image of your market, your competitor’s activity which in turn will lead to higher business resolution making.</p> <p>Distinctive and rich datasets</p> <p>The internet provides you with a rich quantity of text, image, video and numerical data and currently contains at the least 6.05 billion pages. Depending upon what your objective is, you could find relevant websites, setup website crawlers after which make your own custom dataset for analysis.</p> <p>For instance, let’s faux you’re curious about UK football and want to understand the sports market in depth.</p> <p>You can setup webscapers to collect the next data:</p> <p>Video Content: To download all the football games from YouTube or Facebook.com.</p> <p>Football Statistics: You possibly can download your desired workforce’s historical match statistics.</p> <p>WhoScored – Goal Data.</p> <p>SoccerStats.</p> <p>Betting Odds: You can collect the betting odds for football matches from bookmaker’s resembling Bet365 or from player betting exchanges comparable to Betfair or Smarkets.</p> <p>Create applications for instruments that don’t have a public developer API</p> <p>By web scraping data, you will never have to rely on the website releasing a public application programming interface (API) to access the data which they show on their webpages. There are several benefits to web scraping compared to accessing a public API:</p> <p>You’ll be able to access and acquire any data that’s available on their website.</p> <p>You are not limited to a specific number of queries.</p> <p>You don’t need to sign up for an API key or need to abide by their rules.</p> <p>Efficient Data Administration</p> <p>Instead of copying and pasting data from the internet, you possibly can select what data you’ll like to collect from a range of websites, then you possibly can accurately accumulate it with web scraping. For more advanced web scraping / crawling strategies your data will probably be stored within a cloud database, and will likely be running on a every day basis.</p> <p>Storing data with computerized software and programs means that your company, operations or employees can spend less time copying and pasting information and more time on creative work.</p> <p>What are the disadvantages?</p> <p>You will have to learn programming, use web scraping software or to pay a developer</p> <p>If you are looking to gather and organise a vast amount of data from the internet, you will see that existing web scraping software is limited in functionality. Although the software may be good for extracting several elements from a web web page, as quickly as that you must crawl multiple websites they are less effective.</p> <p>Subsequently you will need to either invest in learning web scraping techniques in a programming language similar to javascript, python, ruby, go or php. Alternatively you can hire a contract web scraping developer, regardless both of these approaches will add an overhead to your data assortment operations.</p> <p>Websites often change their structure and crawlers require maintenance</p> <p>As websites recurrently change their HTML structure, generally your crawlers will break. Whether or not you’re utilizing web scraping software or you’re writing the web scraping code, there’s a certain quantity of maintenance that needs to be commonly carried out to keep your data collection pipelines clean and operational.</p> <p>For each website that you simply write a customized encoding script, adds on a specific amount of technical debt. If a number of websites that you’re gathering data from instantly resolve to redesign their websites, you will have to put money into fixing your crawlers.</p> <p>In case you loved this short article along with you would like to acquire more details relating to <a href="https://datamam.com/" rel="nofollow noopener" target="_blank">Best Data Extraction Software</a> kindly check out the website.</p> </div><!-- .entry --> <div class="post-tags clr"> <span class="owp-tag-text">Tags: </span><a href="https://betterpro.app/tag/web-scraping-company/" rel="tag">Web Scraping Company</a></div> <nav class="navigation post-navigation" role="navigation" aria-label="Read more articles"> <h2 class="screen-reader-text">Read more articles</h2> <div class="nav-links"><div class="nav-previous"><a href="https://betterpro.app/2022/01/10/advantages-and-disadvantages-of-web-scraping/" rel="prev"><span class="title"><i class=" fas fa-long-arrow-alt-right" aria-hidden="true" role="img"></i> پست قبلی</span><span class="post-title">Advantages and Disadvantages of Web Scraping</span></a></div></div> </nav> <section id="related-posts" class="clr"> <h3 class="theme-heading related-posts-title"> <span class="text">شاید دوست داشته باشید</span> </h3> <div class="oceanwp-row clr"> <article class="related-post clr col span_1_of_3 col-1 post-8338 post type-post status-publish format-standard hentry category-uncategorized entry"> <h3 class="related-post-title"> <a href="https://betterpro.app/2021/12/07/loza-called-spartaks-draw-luck-leicester-should-have-scored-a-penalty/" rel="bookmark">Loza called Spartak’s draw luck: “Leicester should have scored a penalty.”</a> </h3><!-- .related-post-title --> <time class="published" datetime="2021-12-07T14:07:00-07:00"><i class=" icon-clock" aria-hidden="true" role="img"></i>دسامبر 7, 2021</time> </article><!-- .related-post --> <article class="related-post clr col span_1_of_3 col-2 post-29320 post type-post status-publish format-standard hentry category-uncategorized tag-http-xn-b1agpdpoj5b6d-xn-7sbabhraa7bdcdj5bzb8h-xn-p1ai-index-php-kunena-user-7070-ymuxepo entry"> <h3 class="related-post-title"> <a href="https://betterpro.app/2021/12/26/%d0%bf%d1%87%d0%b5%d0%bb%d0%be%d0%bc%d0%b0%d0%b3%d0%b0%d0%b7%d0%b8%d0%bd-%d0%b2%d1%83%d0%bb%d0%b8%d0%ba-%d0%ba%d0%be%d0%bd%d1%82%d0%b0%d0%ba%d1%82%d1%8b-%d0%bf%d1%80%d0%be%d0%b4%d1%83%d0%ba%d1%86/" rel="bookmark">Пчеломагазин вулик – контакты, продукцию, услуги, цены</a> </h3><!-- .related-post-title --> <time class="published" datetime="2021-12-26T21:39:43-07:00"><i class=" icon-clock" aria-hidden="true" role="img"></i>دسامبر 26, 2021</time> </article><!-- .related-post --> <article class="related-post clr col span_1_of_3 col-3 post-75031 post type-post status-publish format-standard hentry category-uncategorized tag-togel-singapore entry"> <h3 class="related-post-title"> <a href="https://betterpro.app/2022/01/08/these-8-steps-will-totobet-sgp-the-way-you-do-business-forever/" rel="bookmark">These 8 Steps Will Totobet Sgp The Way You Do Business Forever</a> </h3><!-- .related-post-title --> <time class="published" datetime="2022-01-08T12:52:52-07:00"><i class=" icon-clock" aria-hidden="true" role="img"></i>ژانویه 8, 2022</time> </article><!-- .related-post --> </div><!-- .oceanwp-row --> </section><!-- .related-posts --> <section id="comments" class="comments-area clr has-comments"> <div id="respond" class="comment-respond"> <h3 id="reply-title" class="comment-reply-title">دیدگاهتان را بنویسید <small><a rel="nofollow" id="cancel-comment-reply-link" href="/2022/01/10/the-advantages-disadvantages-of-web-scraping-data/#respond" style="display:none;">لغو پاسخ</a></small></h3><form action="https://betterpro.app/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate><div class="comment-textarea"><label for="comment" class="screen-reader-text">Comment</label><textarea name="comment" id="comment" cols="39" rows="4" tabindex="0" class="textarea-comment" placeholder="Your comment here..."></textarea></div><div class="comment-form-author"><label for="author" class="screen-reader-text">Enter your name or username to comment</label><input type="text" name="author" id="author" value="" placeholder="نام (الزامی)" size="22" tabindex="0" aria-required="true" class="input-name" /></div> <div class="comment-form-email"><label for="email" class="screen-reader-text">Enter your email address to comment</label><input type="text" name="email" id="email" value="" placeholder="ایمیل (الزامی)" size="22" tabindex="0" aria-required="true" class="input-email" /></div> <div class="comment-form-url"><label for="url" class="screen-reader-text">Enter your website URL (optional)</label><input type="text" name="url" id="url" value="" placeholder="وبسایت" size="22" tabindex="0" class="input-website" /></div> <p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes" /> <label for="wp-comment-cookies-consent">ذخیره نام، ایمیل و وبسایت من در مرورگر برای زمانی که دوباره دیدگاهی می‌نویسم.</label></p> <p class="form-submit"><input name="submit" type="submit" id="comment-submit" class="submit" value="ارسال نظر" /> <input type='hidden' name='comment_post_ID' value='85493' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /> </p></form> </div><!-- #respond --> </section><!-- #comments --> </article> </div><!-- #content --> </div><!-- #primary --> <aside id="right-sidebar" class="sidebar-container widget-area sidebar-primary" itemscope="itemscope" itemtype="https://schema.org/WPSideBar" role="complementary" aria-label="Primary Sidebar"> <div id="right-sidebar-inner" class="clr"> <div id="search-2" class="sidebar-box widget_search clr"> <form role="search" method="get" class="searchform" action="https://betterpro.app/"> <label for="ocean-search-form-1"> <span class="screen-reader-text">Search this website</span> <input type="search" id="ocean-search-form-1" class="field" autocomplete="off" placeholder="جستجو" name="s"> </label> </form> </div> <div id="recent-posts-2" class="sidebar-box widget_recent_entries clr"> <h4 class="widget-title">نوشته‌های تازه</h4> <ul> <li> <a href="https://betterpro.app/2022/01/17/vikings-at-chiefs-score-results-highlights-from-the-week-3-preseason-game/">Vikings At Chiefs Score: Results, Highlights From The Week 3 Preseason Game</a> </li> <li> <a href="https://betterpro.app/2022/01/17/the-5-best-pre-workouts-for-beginners-2021-guide-reviews-10/">The 5 Best Pre Workouts For Beginners (2021 Guide & Reviews).</a> </li> <li> <a href="https://betterpro.app/2022/01/17/10-reasons-you-will-never-be-able-to-avon-online-shopping-like-warren-buffet/">10 Reasons You Will Never Be Able To Avon Online Shopping Like Warren Buffet</a> </li> <li> <a href="https://betterpro.app/2022/01/17/why-you-cant-ecu-repairs-near-me-without-facebook/">Why You Can’t Ecu Repairs Near Me Without Facebook</a> </li> <li> <a href="https://betterpro.app/2022/01/17/%d8%a7%d9%85%d9%88%d8%b2%d8%b4-%d8%aa%d9%86%d9%8a%d8%b3-%d8%b1%d9%88%d9%8a-%d9%85%d9%8a%d8%b2-32/">اموزش تنيس روي ميز</a> </li> </ul> </div><div id="recent-comments-2" class="sidebar-box widget_recent_comments clr"><h4 class="widget-title">آخرین دیدگاه‌ها</h4><ul id="recentcomments"><li class="recentcomments"><span class="comment-author-link">Julkar Nain</span> در <a href="https://betterpro.app/2021/12/27/situs-idn-poker-online-resmi-terbaik-di-indonesia/#comment-6259">Situs IDN Poker Online Resmi Terbaik Di Indonesia</a></li><li class="recentcomments"><span class="comment-author-link">Olco Under</span> در <a href="https://betterpro.app/2021/12/27/situs-idn-poker-online-resmi-terbaik-di-indonesia/#comment-6256">Situs IDN Poker Online Resmi Terbaik Di Indonesia</a></li><li class="recentcomments"><span class="comment-author-link">Jhon Tavoltra</span> در <a href="https://betterpro.app/2021/12/27/situs-idn-poker-online-resmi-terbaik-di-indonesia/#comment-6251">Situs IDN Poker Online Resmi Terbaik Di Indonesia</a></li></ul></div> </div><!-- #sidebar-inner --> </aside><!-- #right-sidebar --> </div><!-- #content-wrap --> </main><!-- #main --> <div data-elementor-type="footer" data-elementor-id="511" class="elementor elementor-511 elementor-location-footer" data-elementor-settings="[]"> <div class="elementor-section-wrap"> <footer class="elementor-section elementor-top-section elementor-element elementor-element-24c00934 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="24c00934" data-element_type="section" data-settings="{"background_background":"classic"}"> <div class="elementor-container elementor-column-gap-default"> <div class="elementor-row"> <div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7dc1c198" data-id="7dc1c198" data-element_type="column"> <div class="elementor-column-wrap elementor-element-populated"> <div class="elementor-widget-wrap"> <section class="elementor-section elementor-inner-section elementor-element elementor-element-41a8f941 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="41a8f941" data-element_type="section"> <div class="elementor-container elementor-column-gap-default"> <div class="elementor-row"> <div class="elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-4f1f681" data-id="4f1f681" data-element_type="column"> <div class="elementor-column-wrap elementor-element-populated"> <div class="elementor-widget-wrap"> <div class="elementor-element elementor-element-29efd17a elementor-widget elementor-widget-heading" data-id="29efd17a" data-element_type="widget" data-widget_type="heading.default"> <div class="elementor-widget-container"> <h2 class="elementor-heading-title elementor-size-default">به ما بپیوندید</h2> </div> </div> <div class="elementor-element elementor-element-9c01777 elementor-widget elementor-widget-text-editor" data-id="9c01777" data-element_type="widget" data-widget_type="text-editor.default"> <div class="elementor-widget-container"> <div class="elementor-text-editor elementor-clearfix"> <p>مهاجرت تخصص ماست و بر آن هستیم به در مسیر مهاجرت به مشاورین و وکلا و همچنین مهاجران خدمات مناسب ارائه دهیم</p> </div> </div> </div> <div class="elementor-element elementor-element-1058ba84 elementor-button-align-stretch elementor-widget elementor-widget-form" data-id="1058ba84" data-element_type="widget" data-settings="{"button_width":"33","button_width_tablet":"33","step_next_label":"Next","step_previous_label":"Previous","step_type":"number_text","step_icon_shape":"circle"}" data-widget_type="form.default"> <div class="elementor-widget-container"> <form class="elementor-form" method="post" name="New Form"> <input type="hidden" name="post_id" value="511"/> <input type="hidden" name="form_id" value="1058ba84"/> <input type="hidden" name="referer_title" value="The Advantages & Disadvantages of Web Scraping Data - BetterPro" /> <input type="hidden" name="queried_id" value="85493"/> <div class="elementor-form-fields-wrapper elementor-labels-"> <div class="elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-66 elementor-md-66 elementor-field-required"> <label for="form-field-email" class="elementor-field-label elementor-screen-only">Email</label><input size="1" type="email" name="form_fields[email]" id="form-field-email" class="elementor-field elementor-size-lg elementor-field-textual" placeholder="ایمیل خود را وارد کنید (ما هم از اسپم متنفریم!)" required="required" aria-required="true"> </div> <div class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-33 e-form__buttons elementor-md-33"> <button type="submit" class="elementor-button elementor-size-lg"> <span > <span class=" elementor-button-icon"> </span> <span class="elementor-button-text">عضویت در خبرنامه</span> </span> </button> </div> </div> </form> </div> </div> </div> </div> </div> </div> </div> </section> <section class="elementor-section elementor-inner-section elementor-element elementor-element-0202129 elementor-reverse-tablet elementor-reverse-mobile elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="0202129" data-element_type="section"> <div class="elementor-container elementor-column-gap-default"> <div class="elementor-row"> <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-e1678c3" data-id="e1678c3" data-element_type="column"> <div class="elementor-column-wrap elementor-element-populated"> <div class="elementor-widget-wrap"> <div class="elementor-element elementor-element-2fa2530 elementor-widget elementor-widget-heading" data-id="2fa2530" data-element_type="widget" data-widget_type="heading.default"> <div class="elementor-widget-container"> <p class="elementor-heading-title elementor-size-default">خدمات ویژه مشاورین و وکلای مهاجرت</p> </div> </div> </div> </div> </div> <div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-cf593b5" data-id="cf593b5" data-element_type="column"> <div class="elementor-column-wrap elementor-element-populated"> <div class="elementor-widget-wrap"> <div class="elementor-element elementor-element-23277b2 elementor-nav-menu__align-right elementor-nav-menu--stretch elementor-nav-menu__text-align-center elementor-nav-menu--dropdown-tablet elementor-widget elementor-widget-nav-menu" data-id="23277b2" data-element_type="widget" data-settings="{"full_width":"stretch","layout":"horizontal","submenu_icon":{"value":"<i class=\"fas fa-caret-down\"><\/i>","library":"fa-solid"}}" data-widget_type="nav-menu.default"> <div class="elementor-widget-container"> <nav migration_allowed="1" migrated="0" role="navigation" class="elementor-nav-menu--main elementor-nav-menu__container elementor-nav-menu--layout-horizontal e--pointer-underline e--animation-fade"><ul id="menu-1-23277b2" class="elementor-nav-menu"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-719"><a href="https://betterpro.app/contact-us/" class="elementor-item">تماس با ما</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-761"><a href="https://betterpro.app/request/" class="elementor-item">درخواست سرویس مشاورین مهاجرتی</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-762"><a href="https://betterpro.app/services/" class="elementor-item">سرویس های ویژه مشاورین</a></li> </ul></nav> <div class="elementor-menu-toggle" role="button" tabindex="0" aria-label="Menu Toggle" aria-expanded="false"> <i class="eicon-menu-bar" aria-hidden="true" role="presentation"></i> <span class="elementor-screen-only">Menu</span> </div> <nav class="elementor-nav-menu--dropdown elementor-nav-menu__container" role="navigation" aria-hidden="true"><ul id="menu-2-23277b2" class="elementor-nav-menu"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-719"><a href="https://betterpro.app/contact-us/" class="elementor-item" tabindex="-1">تماس با ما</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-761"><a href="https://betterpro.app/request/" class="elementor-item" tabindex="-1">درخواست سرویس مشاورین مهاجرتی</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-762"><a href="https://betterpro.app/services/" class="elementor-item" tabindex="-1">سرویس های ویژه مشاورین</a></li> </ul></nav> </div> </div> </div> </div> </div> </div> </div> </section> <div class="elementor-element elementor-element-13047bd6 e-grid-align-mobile-center elementor-shape-rounded elementor-grid-0 e-grid-align-center elementor-widget elementor-widget-social-icons" data-id="13047bd6" data-element_type="widget" data-widget_type="social-icons.default"> <div class="elementor-widget-container"> <div class="elementor-social-icons-wrapper elementor-grid"> <span class="elementor-grid-item"> <a class="elementor-icon elementor-social-icon elementor-social-icon-twitter elementor-repeater-item-dc10550" target="_blank"> <span class="elementor-screen-only">Twitter</span> <i class="fa fa-twitter"></i> </a> </span> <span class="elementor-grid-item"> <a class="elementor-icon elementor-social-icon elementor-social-icon-facebook elementor-repeater-item-0267196" target="_blank"> <span class="elementor-screen-only">Facebook</span> <i class="fa fa-facebook"></i> </a> </span> <span class="elementor-grid-item"> <a class="elementor-icon elementor-social-icon elementor-social-icon-dribbble elementor-repeater-item-0e260c9" target="_blank"> <span class="elementor-screen-only">Dribbble</span> <i class="fa fa-dribbble"></i> </a> </span> <span class="elementor-grid-item"> <a class="elementor-icon elementor-social-icon elementor-social-icon-youtube elementor-repeater-item-dbaeb71" target="_blank"> <span class="elementor-screen-only">Youtube</span> <i class="fa fa-youtube"></i> </a> </span> <span class="elementor-grid-item"> <a class="elementor-icon elementor-social-icon elementor-social-icon-pinterest elementor-repeater-item-d2d5c50" target="_blank"> <span class="elementor-screen-only">Pinterest</span> <i class="fa fa-pinterest"></i> </a> </span> <span class="elementor-grid-item"> <a class="elementor-icon elementor-social-icon elementor-social-icon-medium elementor-repeater-item-92c0998" target="_blank"> <span class="elementor-screen-only">Medium</span> <i class="fa fa-medium"></i> </a> </span> </div> </div> </div> <div class="elementor-element elementor-element-5bb3826b elementor-widget elementor-widget-heading" data-id="5bb3826b" data-element_type="widget" data-widget_type="heading.default"> <div class="elementor-widget-container"> <p class="elementor-heading-title elementor-size-default">© 2020 All rights reserved</p> </div> </div> </div> </div> </div> </div> </div> </footer> </div> </div> </div><!-- #wrap --> </div><!-- #outer-wrap --> <a aria-label="Scroll to the top of the page" href="#" id="scroll-top" class="scroll-top-right"><i class=" fa fa-angle-up" aria-hidden="true" role="img"></i></a> <script type="text/x-template" id="jet-advanced-reviews-comment-template"><div class="jet-reviews-advanced__review-comment" :class="commentClass" > <div class="jet-reviews-comment-user-avatar" v-html="commentData.author.avatar" v-if="$root.options.commentAuthorAvatarVisible" ></div> <div class="jet-reviews-comment-container"> <div class="jet-reviews-comment-user-details"> <div class="jet-reviews-comment-user-name"><span>{{ commentData.author.name }}</span><time class="jet-reviews-published-date" :datetime="commentData.date.raw" :title="commentData.date.raw"><span>{{ commentData.date.human_diff }}</span></time></div> <div class="jet-reviews-user-data__verifications" v-if="authorVerificationData" > <div class="jet-reviews-user-data__verification" :class="[ item.slug ]" v-for="(item, index) in authorVerificationData" > <span class="verification-icon" v-html="item.icon" v-if="item.icon"></span> <span class="verification-label" v-html="item.message"></span> </div> </div> </div> <p class="jet-reviews-comment-content" v-html="commentData.content"></p> <div class="jet-reviews-comment-actions" v-if="formControlsVisible" > <div class="jet-reviews-button jet-reviews-button--primary" tabindex="0" @click="showReplyForm" @keyup.enter="showReplyForm" > <span class="jet-reviews-button__icon" v-if="replyIcon" v-html="replyIcon"></span> <span class="jet-reviews-button__text">{{ $root.options.labels.replyButton }}</span> </div> </div> <div class="jet-reviews-comment-reply-form" :class="{ 'jet-progress-state': replySubmiting }" v-if="replyFormVisible" > <html-textarea class="jet-reviews-input jet-reviews-input--textarea" :data-placeholder="$root.options.labels.replyPlaceholder" v-model="replyText" ref="commentText" ></html-textarea> <html-textarea class="jet-reviews-input" :is-valid="isValidAuthorName" :placeholder="$root.options.labels.authorNamePlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="replyAuthorName" v-if="$root.guestNameFieldVisible" ></html-textarea> <html-textarea class="jet-reviews-input" :is-valid="isValidAuthorEmail" :placeholder="$root.options.labels.authorMailPlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="replyAuthorMail" v-if="$root.guestNameFieldVisible" ></html-textarea> <div class="jet-reviews-comment-reply-controls" > <div class="jet-reviews-button jet-reviews-button--secondary" tabindex="0" @click="cancelNewReply" @keyup.enter="cancelNewReply" > <div class="jet-reviews-button__text">{{ $root.options.labels.cancelButtonLabel }}</div> </div> <div v-if="submitVisible" class="jet-reviews-button jet-reviews-button--primary" tabindex="0" @click="submitNewReply" @keyup.enter="submitNewReply" > <div class="jet-reviews-button__text">{{ $root.options.labels.submitReplyButton }}</div> </div> </div> <div v-if="responseMessage" class="jet-reviews-comment-reply-message" > <span>{{ responseMessage }}</span> </div> </div> <div v-if="0 !== commentsList.length" class="jet-reviews-comment-reply-list" > <jet-advanced-reviews-comment v-for="comment in commentsList" :key="comment.id" :comment-data="comment" :parent-id="+commentData.id" :parent-comments="commentData.children" :depth="1" > </jet-advanced-reviews-comment> </div> </div> </div> </script> <script type="text/x-template" id="jet-advanced-reviews-form-template"><div class="jet-reviews-advanced__new-review-form" :class="{ 'jet-progress-state': reviewSubmiting }" > <div class="jet-new-review-control jet-new-review-content"> <html-textarea class="jet-reviews-input jet-reviews-input--textarea" :is-valid="isValidReviewContent" :placeholder="$root.options.labels.reviewContentPlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" ref="reviewContent" v-model="reviewContent" ></html-textarea> </div> <div class="jet-new-review-control jet-new-review-title"> <html-textarea class="jet-reviews-input" :is-valid="isValidReviewTitle" :placeholder="$root.options.labels.reviewTitlePlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="reviewTitle" ></html-textarea> </div> <div class="jet-new-review-control jet-new-review-author-name" v-if="$root.guestNameFieldVisible" > <html-textarea class="jet-reviews-input" :is-valid="isValidAuthorName" :placeholder="$root.options.labels.authorNamePlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="reviewAuthorName" ></html-textarea> </div> <div class="jet-new-review-control jet-new-review-author-mail" v-if="$root.guestMailFieldVisible" > <html-textarea class="jet-reviews-input" :is-valid="isValidAuthorEmail" :placeholder="$root.options.labels.authorMailPlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="reviewAuthorMail" ></html-textarea> </div> <div class="jet-new-review-fields"> <div class="jet-new-review-field" v-for="(field, index) in fields" :key="index" > <component :is="$root.options.ratingInputType" :max="field.field_max" :step="field.field_step" :label="field.field_label" v-model="field.field_value" ></component> </div> </div> <div class="jet-new-review-controls" > <div class="jet-reviews-button jet-reviews-button--secondary" tabindex="0" @click="cancelSubmit" @keyup.enter="cancelSubmit" > <div class="jet-reviews-button__text">{{ $root.options.labels.cancelButtonLabel }}</div> </div> <div v-if="formControlsVisible" class="jet-reviews-button jet-reviews-button--primary" tabindex="0" @click="submitReview" @keyup.enter="submitReview" > <div class="jet-reviews-button__text">{{ $root.options.labels.submitReviewButton }}</div> </div> </div> <div class="jet-new-review-message" v-if="formMessageVisible" > <span>{{ messageText }}</span> </div> </div> </script> <script type="text/x-template" id="jet-advanced-reviews-item-template"><div class="jet-reviews-advanced__review"> <div class="jet-reviews-advanced__review-header"> <div class="jet-reviews-advanced__review-author"> <div class="jet-reviews-user-data"> <div class="jet-reviews-user-data__avatar" v-html="itemData.author.avatar" v-if="$root.options.reviewAuthorAvatarVisible" ></div> <div class="jet-reviews-user-data__info"> <div class="jet-reviews-user-data__info-row"> <div class="jet-reviews-user-data__name"> <span>{{ itemData.author.name }}</span> <time class="jet-reviews-published-date" :datetime="itemData.date.raw" :title="itemData.date.raw"><span>{{ itemData.date.human_diff }}</span></time> </div> <div class="jet-reviews-user-data__verifications" v-if="authorVerificationData" > <div class="jet-reviews-user-data__verification" :class="[ item.slug ]" v-for="(item, index) in authorVerificationData" > <span class="verification-icon" v-html="item.icon" v-if="item.icon"></span> <span class="verification-label" v-html="item.message"></span> </div> </div> </div> <div class="jet-reviews-user-data__summary-rating" v-if="averageRatingVisible" > <component :is="$root.options.ratingLayout" :before="false" :rating="+itemData.rating" :after="'points-field' === $root.options.ratingLayout ? averageRatingData.value : false" ></component> </div> <div class="jet-reviews-user-data__details-rating" v-if="detailsRatingVisible" > <component v-for="(item, index) in itemData.rating_data" :is="$root.options.ratingLayout" :key="index" :before="item.field_label" :rating="Math.round( +item.field_value * 100 / +item.field_max )" :after="'points-field' === $root.options.ratingLayout ? +item.field_value : false" ></component> </div> </div> </div> </div> <div class="jet-reviews-advanced__review-misc"> <div class="jet-reviews-advanced__review-pin" v-html="pinnedIcon" v-if="pinnedVisible" > </div> </div> </div> <div class="jet-reviews-advanced__review-container" > <h3 class="jet-reviews-advanced__review-title" v-html="itemData.title" v-if="$root.options.reviewTitleVisible" ></h3> <p class="jet-reviews-advanced__review-content" v-html="itemData.content"></p> </div> <div class="jet-reviews-advanced__review-footer" > <div class="jet-reviews-advanced__review-controls"> <div class="jet-reviews-advanced__review-control-group" v-if="userCanRate" > <div class="jet-reviews-button jet-reviews-button--secondary" :class="{ 'jet-progress-state': approvalSubmiting }" tabindex="0" @click="updateApprovalHandler( 'like' )" @keyup.enter="updateApprovalHandler( 'like' )" > <span class="jet-reviews-button__icon" v-html="likeIcon"></span> <span class="jet-reviews-button__text">{{ itemData.like }}</span> </div> <div class="jet-reviews-button jet-reviews-button--secondary" :class="{ 'jet-progress-state': approvalSubmiting }" tabindex="0" @click="updateApprovalHandler( 'dislike' )" @keyup.enter="updateApprovalHandler( 'dislike' )" > <span class="jet-reviews-button__icon" v-html="dislikeIcon"></span> <span class="jet-reviews-button__text">{{ itemData.dislike }}</span> </div> </div> <div class="jet-reviews-advanced__review-control-group"> <div v-if="!isCommentsEmpty" class="jet-reviews-button jet-reviews-button--primary" tabindex="0" @click="toggleCommentsVisible" @keyup.enter="toggleCommentsVisible" > <span class="jet-reviews-button__icon" v-if="showCommentsIcon" v-html="showCommentsIcon"></span> <span class="jet-reviews-button__text" v-if="!commentsVisible">{{ `${ $root.options.labels.showCommentsButton }(${ itemCommentsCount })` }}</span> <span class="jet-reviews-button__text" v-if="commentsVisible">{{ `${ $root.options.labels.hideCommentsButton }(${ itemCommentsCount })` }}</span> </div> <div v-if="userCanComment" class="jet-reviews-button jet-reviews-button--primary" tabindex="0" @click="showCommentForm" @keyup.enter="showCommentForm" > <span class="jet-reviews-button__icon" v-if="addCommentIcon" v-html="addCommentIcon"></span> <span class="jet-reviews-button__text">{{ $root.options.labels.newCommentButton }}</span> </div> </div> </div> <div class="jet-review-new-comment" :class="{ 'jet-progress-state': commentSubmiting }" v-if="commentFormVisible" > <div class="jet-review-new-comment-form" > <html-textarea class="jet-reviews-input jet-reviews-input--textarea" :data-placeholder="$root.options.labels.commentPlaceholder" ref="commentContent" v-model="commentText" ></html-textarea> <html-textarea class="jet-reviews-input" :is-valid="isValidAuthorName" :placeholder="$root.options.labels.authorNamePlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="commentAuthorName" v-if="$root.guestNameFieldVisible" ></html-textarea> <html-textarea class="jet-reviews-input" :is-valid="isValidAuthorEmail" :placeholder="$root.options.labels.authorMailPlaceholder" :not-valid-label="$root.options.labels.notValidFieldMessage" v-model="commentAuthorMail" v-if="$root.guestNameFieldVisible" ></html-textarea> <div class="jet-review-new-comment-controls" > <div class="jet-reviews-button jet-reviews-button--secondary" tabindex="0" @click="cancelNewComment" @keyup.enter="cancelNewComment" > <div class="jet-reviews-button__text">{{ $root.options.labels.cancelButtonLabel }}</div> </div> <div v-if="commentControlsVisible" class="jet-reviews-button jet-reviews-button--primary" tabindex="0" @click="submitNewComment" @keyup.enter="submitNewComment" > <div class="jet-reviews-button__text">{{ $root.options.labels.submitCommentButton }}</div> </div> </div> <div class="jet-review-new-comment-message" v-if="responseMessage" > <span>{{ responseMessage }}</span> </div> </div> </div> <div class="jet-reviews-advanced__review-comments" v-if="isCommentsVisible" > <h4 class="jet-reviews-advanced__comments-title">{{ $root.options.labels.сommentsTitle }}</h4> <jet-advanced-reviews-comment v-for="comment in itemData.comments" :key="comment.id" :comment-data="comment" :parent-id="0" :parent-comments="[]" :depth="0" > </jet-advanced-reviews-comment> </div> </div> </div> </script> <script type="text/x-template" id="jet-advanced-reviews-point-field-template"><div class="jet-reviews-field jet-reviews-points-field" :class="ratingClass" > <div class="jet-reviews-field__label jet-reviews-field__label-before" v-if="!isBeforeEmpty" > <span>{{ before }}</span> </div> <div class="jet-reviews-field__rating"> <div class="jet-reviews-points-field__adjuster"></div> <div class="jet-reviews-points-field__filled" :style="{ width: preparedRating + '%' }"></div> <div class="jet-reviews-points-field__empty" :style="{ width: ( 100 - preparedRating ) + '%' }"></div> </div> <div class="jet-reviews-field__label jet-reviews-field__label-after" v-if="!isAfterEmpty" > <span>{{ after }}</span> </div> </div> </script> <script type="text/x-template" id="jet-advanced-reviews-slider-input-template"><div class="jet-reviews-slider-input jet-reviews-range-input" > <span class="jet-new-review-field-label" v-html="label" ></span> <input tabindex="0" type="range" min="0" :step="step" :max="max" :value="value" @input="handleInput" @change="handleChange" > <span class="jet-new-review-field-value" v-html="valueLabel" ></span> </div> </script> <script type="text/x-template" id="jet-advanced-reviews-star-field-template"><div class="jet-reviews-field jet-reviews-stars-field" :class="ratingClass" > <div class="jet-reviews-field__label jet-reviews-field__label-before" v-if="!isBeforeEmpty" > <span>{{ before }}</span> </div> <div class="jet-reviews-field__rating"> <div class="jet-reviews-stars jet-reviews-stars--adjuster" v-html="emptyIcons" ></div> <div class="jet-reviews-stars jet-reviews-stars--filled" :style="{ width: preparedRating + '%' }" v-html="filledIcons" > </div> <div class="jet-reviews-stars jet-reviews-stars--empty" :style="{ width: ( 100 - preparedRating ) + '%' }" v-html="emptyIcons" > </div> </div> <div class="jet-reviews-field__label jet-reviews-field__label-after" v-if="!isAfterEmpty" > <span>{{ after }}</span> </div> </div> </script> <script type="text/x-template" id="jet-advanced-reviews-stars-input-template"><div class="jet-reviews-stars-input" > <span class="jet-new-review-field-label" v-html="label" ></span> <div class="jet-reviews-field jet-reviews-stars-field" :class="ratingClass" > <div class="jet-reviews-field__rating" > <div class="jet-reviews-stars jet-reviews-stars--adjuster" @mouseout="ratingMouseOut()" > <div class="jet-reviews-star" v-for="index in max" :key="index" v-html="emptyIcon" @click="ratingClick( index )" @mouseover="ratingMouseOver( index )" ></div> </div> <div class="jet-reviews-stars jet-reviews-stars--filled" :style="{ width: preparedRating + '%' }" v-html="filledIcons" > </div> <div class="jet-reviews-stars jet-reviews-stars--empty" :style="{ width: ( 100 - preparedRating ) + '%' }" v-html="emptyIcons" > </div> </div> </div> <span class="jet-new-review-field-value" v-html="valueLabel" ></span> </div> </script> <script type="text/x-template" id="jet-reviews-widget-pagination-template"><div :class="classesList" > <div :class="[baseClass + '__items']"> <div :class="prevClasses" v-html="prevIcon" @click="prev" > </div> <div :class="firstPageClasses" @click="changePage(1)"><span>1</span></div> <div v-if="currentPage > 5" :class="[baseClass + '__item', baseClass + '__item--jump-prev']" @click="fastPrev"><span>...</span></div> <div v-if="currentPage === 5" :class="[baseClass + '__item']" @click="changePage(currentPage - 3)"><span>{{ currentPage - 3 }}</span></div> <div v-if="currentPage - 2 > 1" :class="[baseClass + '__item']" @click="changePage(currentPage - 2)"><span>{{ currentPage - 2 }}</span></div> <div v-if="currentPage - 1 > 1" :class="[baseClass + '__item']" @click="changePage(currentPage - 1)"><span>{{ currentPage - 1 }}</span></div> <div v-if="currentPage != 1 && currentPage != allPages" :class="[baseClass + '__item',baseClass + '__item--active']"><span>{{ currentPage }}</span></div> <div v-if="currentPage + 1 < allPages" :class="[baseClass + '__item']" @click="changePage(currentPage + 1)"><span>{{ currentPage + 1 }}</span></div> <div v-if="currentPage + 2 < allPages" :class="[baseClass + '__item']" @click="changePage(currentPage + 2)"><span>{{ currentPage + 2 }}</span></div> <div v-if="allPages - currentPage === 4" :class="[baseClass + '__item']" @click="changePage(currentPage + 3)"><span>{{ currentPage + 3 }}</span></div> <div v-if="allPages - currentPage >= 5" :class="[baseClass + '__item', baseClass + '__item--jump-next']" @click="fastNext"><span>...</span></div> <div v-if="allPages > 1" :class="lastPageClasses" @click="changePage(allPages)"><span>{{ allPages }}</span></div> <div :class="nextClasses" v-html="nextIcon" @click="next" > </div> </div> </div> </script> <div data-elementor-type="popup" data-elementor-id="29901" class="elementor elementor-29901 elementor-location-popup" data-elementor-settings="{"triggers":{"page_load":"yes","scrolling":"yes","click":"yes","page_load_delay":0,"scrolling_direction":"down","scrolling_offset":50,"click_times":1},"timing":{"page_views":"yes","sessions":"yes","times":"yes","devices":"yes","browsers":"yes","page_views_views":3,"sessions_sessions":2,"times_times":3,"devices_devices":["desktop","tablet","mobile"],"browsers_browsers":"all"}}"> <div class="elementor-section-wrap"> <section class="elementor-section elementor-top-section elementor-element elementor-element-1a7d8ee1 elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="1a7d8ee1" data-element_type="section" data-settings="{"background_background":"classic"}"> <div class="elementor-container elementor-column-gap-no"> <div class="elementor-row"> <div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-18630963" data-id="18630963" data-element_type="column"> <div class="elementor-column-wrap elementor-element-populated"> <div class="elementor-widget-wrap"> <div class="elementor-element elementor-element-5942931f elementor-widget elementor-widget-image" data-id="5942931f" data-element_type="widget" data-widget_type="image.default"> <div class="elementor-widget-container"> <div class="elementor-image"> <a href="https://viopoker.info/ref/IDVIOPOK"> <img width="330" height="120" src="https://betterpro.app/wp-content/uploads/2021/12/Daftar-IDN-Poker-Online.png" class="attachment-full size-full" alt="" loading="lazy" srcset="https://betterpro.app/wp-content/uploads/2021/12/Daftar-IDN-Poker-Online.png 330w, https://betterpro.app/wp-content/uploads/2021/12/Daftar-IDN-Poker-Online-300x109.png 300w" sizes="(max-width: 330px) 100vw, 330px" /> </a> </div> </div> </div> </div> </div> </div> <div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-4cb4fb18" data-id="4cb4fb18" data-element_type="column"> <div class="elementor-column-wrap elementor-element-populated"> <div class="elementor-widget-wrap"> <div class="elementor-element elementor-element-6f7871d5 elementor-widget elementor-widget-heading" data-id="6f7871d5" data-element_type="widget" data-widget_type="heading.default"> <div class="elementor-widget-container"> <h4 class="elementor-heading-title elementor-size-default">Situs IDN Poker Online Resmi Terbaik Di Indonesia</h4> </div> </div> <div class="elementor-element elementor-element-425c266a elementor-widget elementor-widget-text-editor" data-id="425c266a" data-element_type="widget" data-widget_type="text-editor.default"> <div class="elementor-widget-container"> <div class="elementor-text-editor elementor-clearfix"> </div> </div> </div> </div> </div> </div> </div> </div> </section> </div> </div> <!-- This site is converting visitors into subscribers and customers with OptinMonster - https://optinmonster.com --> <script>(function(d,u,ac){var s=d.createElement('script');s.type='text/javascript';s.src='https://a.omappapi.com/app/js/api.min.js';s.async=true;s.dataset.user=u;s.dataset.account=ac;d.getElementsByTagName('head')[0].appendChild(s);})(document,132995,145535);</script> <!-- / https://optinmonster.com --> <link rel='stylesheet' id='e-animations-css' href='https://betterpro.app/wp-content/plugins/elementor/assets/lib/animations/animations.min.css?ver=3.5.3' type='text/css' media='all' /> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/comment-reply.min.js?ver=5.8.3' id='comment-reply-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/imagesloaded.min.js?ver=4.1.4' id='imagesloaded-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/vendors/isotope.pkgd.min.js?ver=3.0.0' id='isotop-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/vendors/flickity.pkgd.min.js?ver=3.0.0' id='flickity-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/vendors/photoswipe.min.js?ver=3.0.0' id='photoswipe-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/vendors/photoswipe-ui-default.min.js?ver=3.0.0' id='photoswipe-ui-default-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/vendors/sidr.js?ver=3.0.0' id='sidr-js'></script> <script type='text/javascript' id='oceanwp-main-js-extra'> /* <![CDATA[ */ var oceanwpLocalize = {"nonce":"874966f403","isRTL":"1","menuSearchStyle":"drop_down","mobileMenuSearchStyle":"disabled","sidrSource":null,"sidrDisplace":"1","sidrSide":"left","sidrDropdownTarget":"link","verticalHeaderTarget":"link","customSelects":".woocommerce-ordering .orderby, #dropdown_product_cat, .widget_categories select, .widget_archive select, .single-product .variations_form .variations select"}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/theme.vanilla.min.js?ver=3.0.0' id='oceanwp-main-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/wp-embed.min.js?ver=5.8.3' id='wp-embed-js'></script> <!--[if lt IE 9]> <script type='text/javascript' src='https://betterpro.app/wp-content/themes/oceanwp/assets/js/third/html5.min.js?ver=3.0.0' id='html5shiv-js'></script> <![endif]--> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/jquery/jquery.min.js?ver=3.6.0' id='jquery-core-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2' id='jquery-migrate-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor-pro/assets/lib/smartmenus/jquery.smartmenus.min.js?ver=1.0.1' id='smartmenus-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor-pro/assets/js/webpack-pro.runtime.min.js?ver=3.3.8' id='elementor-pro-webpack-runtime-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/js/webpack.runtime.min.js?ver=3.5.3' id='elementor-webpack-runtime-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/js/frontend-modules.min.js?ver=3.5.3' id='elementor-frontend-modules-js'></script> <script type='text/javascript' id='elementor-pro-frontend-js-before'> var ElementorProFrontendConfig = {"ajaxurl":"https:\/\/betterpro.app\/wp-admin\/admin-ajax.php","nonce":"8e786d08d1","urls":{"assets":"https:\/\/betterpro.app\/wp-content\/plugins\/elementor-pro\/assets\/"},"i18n":{"toc_no_headings_found":"No headings were found on this page."},"shareButtonsNetworks":{"facebook":{"title":"Facebook","has_counter":true},"twitter":{"title":"Twitter"},"google":{"title":"Google+","has_counter":true},"linkedin":{"title":"LinkedIn","has_counter":true},"pinterest":{"title":"Pinterest","has_counter":true},"reddit":{"title":"Reddit","has_counter":true},"vk":{"title":"VK","has_counter":true},"odnoklassniki":{"title":"OK","has_counter":true},"tumblr":{"title":"Tumblr"},"digg":{"title":"Digg"},"skype":{"title":"Skype"},"stumbleupon":{"title":"StumbleUpon","has_counter":true},"mix":{"title":"Mix"},"telegram":{"title":"Telegram"},"pocket":{"title":"Pocket","has_counter":true},"xing":{"title":"XING","has_counter":true},"whatsapp":{"title":"WhatsApp"},"email":{"title":"Email"},"print":{"title":"Print"}},"facebook_sdk":{"lang":"fa_IR","app_id":""},"lottie":{"defaultAnimationUrl":"https:\/\/betterpro.app\/wp-content\/plugins\/elementor-pro\/modules\/lottie\/assets\/animations\/default.json"}}; </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor-pro/assets/js/frontend.min.js?ver=3.3.8' id='elementor-pro-frontend-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/lib/waypoints/waypoints.min.js?ver=4.0.2' id='elementor-waypoints-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/jquery/ui/core.min.js?ver=1.12.1' id='jquery-ui-core-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/lib/swiper/swiper.min.js?ver=5.3.6' id='swiper-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/lib/share-link/share-link.min.js?ver=3.5.3' id='share-link-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/lib/dialog/dialog.min.js?ver=4.9.0' id='elementor-dialog-js'></script> <script type='text/javascript' id='elementor-frontend-js-extra'> /* <![CDATA[ */ var uael_particles_script = {"uael_particles_url":"https:\/\/betterpro.app\/wp-content\/plugins\/ultimate-elementor\/assets\/min-js\/uael-particles.min.js","particles_url":"https:\/\/betterpro.app\/wp-content\/plugins\/ultimate-elementor\/assets\/lib\/particles\/particles.min.js"}; var papro_addons = {"url":"https:\/\/betterpro.app\/wp-admin\/admin-ajax.php","particles_url":"https:\/\/betterpro.app\/wp-content\/plugins\/premium-addons-pro\/assets\/frontend\/min-js\/particles.min.js","kenburns_url":"https:\/\/betterpro.app\/wp-content\/plugins\/premium-addons-pro\/assets\/frontend\/min-js\/cycle.min.js","gradient_url":"https:\/\/betterpro.app\/wp-content\/plugins\/premium-addons-pro\/assets\/frontend\/min-js\/premium-gradient.min.js","parallax_url":"https:\/\/betterpro.app\/wp-content\/plugins\/premium-addons-pro\/assets\/frontend\/min-js\/premium-parallax.min.js","lottie_url":"https:\/\/betterpro.app\/wp-content\/plugins\/premium-addons-for-elementor\/assets\/frontend\/min-js\/lottie.min.js"}; /* ]]> */ </script> <script type='text/javascript' id='elementor-frontend-js-before'> var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06af\u0630\u0627\u0631\u06cc \u062f\u0631 Facebook","shareOnTwitter":"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06af\u0630\u0627\u0631\u06cc \u062f\u0631 Twitter","pinIt":"\u067e\u06cc\u0646 \u06a9\u0646\u06cc\u062f","download":"\u062f\u0627\u0646\u0644\u0648\u062f","downloadImage":"\u062f\u0627\u0646\u0644\u0648\u062f \u062a\u0635\u0648\u06cc\u0631","fullscreen":"\u062a\u0645\u0627\u0645\u200c\u0635\u0641\u062d\u0647","zoom":"\u0628\u0632\u0631\u06af\u0646\u0645\u0627\u06cc\u06cc","share":"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06af\u0630\u0627\u0631\u06cc","playVideo":"\u067e\u062e\u0634 \u0648\u06cc\u062f\u06cc\u0648","previous":"\u0642\u0628\u0644\u06cc","next":"\u0628\u0639\u062f\u06cc","close":"\u0628\u0633\u062a\u0646"},"is_rtl":true,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"\u0645\u0648\u0628\u0627\u06cc\u0644","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Extra","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"\u062a\u0628\u0644\u062a","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Extra","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"\u0644\u067e \u062a\u0627\u067e","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"\u0635\u0641\u062d\u0647 \u0639\u0631\u06cc\u0636 (Widescreen)","value":2400,"default_value":2400,"direction":"min","is_enabled":false}}},"version":"3.5.3","is_static":false,"experimentalFeatures":{"e_import_export":true,"e_hidden_wordpress_widgets":true,"landing-pages":true,"elements-color-picker":true,"favorite-widgets":true,"admin-top-bar":true,"form-submissions":true,"video-playlist":true},"urls":{"assets":"https:\/\/betterpro.app\/wp-content\/plugins\/elementor\/assets\/"},"settings":{"page":[],"editorPreferences":[]},"kit":{"active_breakpoints":["viewport_mobile","viewport_tablet"],"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":85493,"title":"The%20Advantages%20%26%20Disadvantages%20of%20Web%20Scraping%20Data%20-%20BetterPro","excerpt":"","featuredImage":false}}; </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/js/frontend.min.js?ver=3.5.3' id='elementor-frontend-js'></script> <script type='text/javascript' id='elementor-frontend-js-after'> window.scope_array = []; window.backend = 0; jQuery.cachedScript = function( url, options ) { // Allow user to set any option except for dataType, cache, and url. options = jQuery.extend( options || {}, { dataType: "script", cache: true, url: url }); // Return the jqXHR object so we can chain callbacks. return jQuery.ajax( options ); }; jQuery( window ).on( "elementor/frontend/init", function() { elementorFrontend.hooks.addAction( "frontend/element_ready/global", function( $scope, $ ){ if ( "undefined" == typeof $scope ) { return; } if ( $scope.hasClass( "uael-particle-yes" ) ) { window.scope_array.push( $scope ); $scope.find(".uael-particle-wrapper").addClass("js-is-enabled"); }else{ return; } if(elementorFrontend.isEditMode() && $scope.find(".uael-particle-wrapper").hasClass("js-is-enabled") && window.backend == 0 ){ var uael_url = uael_particles_script.uael_particles_url; jQuery.cachedScript( uael_url ); window.backend = 1; }else if(elementorFrontend.isEditMode()){ var uael_url = uael_particles_script.uael_particles_url; jQuery.cachedScript( uael_url ).done(function(){ var flag = true; }); } }); }); jQuery( document ).on( "ready elementor/popup/show", () => { if ( jQuery.find( ".uael-particle-yes" ).length < 1 ) { return; } var uael_url = uael_particles_script.uael_particles_url; jQuery.cachedScript = function( url, options ) { // Allow user to set any option except for dataType, cache, and url. options = jQuery.extend( options || {}, { dataType: "script", cache: true, url: url }); // Return the jqXHR object so we can chain callbacks. return jQuery.ajax( options ); }; jQuery.cachedScript( uael_url ); }); </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor-pro/assets/js/preloaded-elements-handlers.min.js?ver=3.3.8' id='pro-preloaded-elements-handlers-js'></script> <script type='text/javascript' id='jet-elements-js-extra'> /* <![CDATA[ */ var jetElements = {"ajaxUrl":"https:\/\/betterpro.app\/wp-admin\/admin-ajax.php","isMobile":"false","templateApiUrl":"https:\/\/betterpro.app\/wp-json\/jet-elements-api\/v1\/elementor-template","devMode":"false","messages":{"invalidMail":"Please specify a valid e-mail"}}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/jet-elements/assets/js/jet-elements.min.js?ver=2.5.9' id='jet-elements-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.13.7' id='regenerator-runtime-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0' id='wp-polyfill-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/hooks.min.js?ver=a7edae857aab69d69fa10d5aef23a5de' id='wp-hooks-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/i18n.min.js?ver=5f1269854226b4dd90450db411a12b79' id='wp-i18n-js'></script> <script type='text/javascript' id='wp-i18n-js-after'> wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'rtl' ] } ); </script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/vendor/lodash.min.js?ver=4.17.19' id='lodash-js'></script> <script type='text/javascript' id='lodash-js-after'> window.lodash = _.noConflict(); </script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/url.min.js?ver=d4bdf85a96aa587b52f4b8d58b4457c1' id='wp-url-js'></script> <script type='text/javascript' id='wp-api-fetch-js-translations'> ( function( domain, translations ) { var localeData = translations.locale_data[ domain ] || translations.locale_data.messages; localeData[""].domain = domain; wp.i18n.setLocaleData( localeData, domain ); } )( "default", {"translation-revision-date":"2021-10-16 02:04:19+0000","generator":"GlotPress\/3.0.0-alpha.2","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","plural-forms":"nplurals=1; plural=0;","lang":"fa"},"You are probably offline.":["\u0634\u0645\u0627 \u0627\u062d\u062a\u0645\u0627\u0644\u0627\u064b \u0622\u0641\u0644\u0627\u06cc\u0646 \u0647\u0633\u062a\u06cc\u062f."],"Media upload failed. If this is a photo or a large image, please scale it down and try again.":["\u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u0631\u0633\u0627\u0646\u0647 \u0646\u0627\u0645\u0648\u0641\u0642 \u0628\u0648\u062f. \u0627\u06af\u0631 \u0627\u0646\u062f\u0627\u0632\u0647 \u0627\u06cc\u0646 \u0639\u06a9\u0633 \u06cc\u0627 \u062a\u0635\u0648\u06cc\u0631 \u0628\u0632\u0631\u06af \u0627\u0633\u062a\u060c \u0644\u0637\u0641\u0627 \u0645\u0642\u06cc\u0627\u0633 \u0622\u0646\u200c\u0631\u0627 \u067e\u0627\u06cc\u06cc\u0646 \u0628\u06cc\u0627\u0648\u0631\u06cc\u062f \u0648 \u062f\u0648\u0628\u0627\u0631\u0647 \u062a\u0644\u0627\u0634 \u0646\u0645\u0627\u06cc\u06cc\u062f."],"The response is not a valid JSON response.":["\u067e\u0627\u0633\u062e\u060c \u06cc\u06a9 \u067e\u0627\u0633\u062e JSON \u0645\u0639\u062a\u0628\u0631 \u0646\u06cc\u0633\u062a."],"An unknown error occurred.":["\u062e\u0637\u0627\u06cc\u06cc \u0646\u0627\u0634\u0646\u0627\u062e\u062a\u0647 \u0631\u062e \u062f\u0627\u062f."]}},"comment":{"reference":"wp-includes\/js\/dist\/api-fetch.js"}} ); </script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/dist/api-fetch.min.js?ver=134e23b5f88ba06a093f9f92520a98df' id='wp-api-fetch-js'></script> <script type='text/javascript' id='wp-api-fetch-js-after'> wp.apiFetch.use( wp.apiFetch.createRootURLMiddleware( "https://betterpro.app/wp-json/" ) ); wp.apiFetch.nonceMiddleware = wp.apiFetch.createNonceMiddleware( "9b7ae50bb8" ); wp.apiFetch.use( wp.apiFetch.nonceMiddleware ); wp.apiFetch.use( wp.apiFetch.mediaUploadMiddleware ); wp.apiFetch.nonceEndpoint = "https://betterpro.app/wp-admin/admin-ajax.php?action=rest-nonce"; </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/jet-reviews/assets/js/lib/vue.min.js?ver=2.6.11' id='jet-vue-js'></script> <script type='text/javascript' id='jet-reviews-frontend-js-extra'> /* <![CDATA[ */ var jetReviewPublicConfig = {"version":"2.2.4","ajax_url":"https:\/\/betterpro.app\/wp-admin\/admin-ajax.php","current_url":"https:\/\/betterpro.app\/2022\/01\/10\/the-advantages-disadvantages-of-web-scraping-data","getPublicReviewsRoute":"\/jet-reviews-api\/v1\/get-public-reviews-list","submitReviewCommentRoute":"\/jet-reviews-api\/v1\/submit-review-comment","submitReviewRoute":"\/jet-reviews-api\/v1\/submit-review","likeReviewRoute":"\/jet-reviews-api\/v1\/update-review-approval","reviewTypeData":{"id":"1","name":"Default","slug":"default","description":"","source":"default","fields":[{"label":"Rating","step":1,"max":5}],"meta_data":""},"labels":{"alreadyReviewed":"*Already reviewed","notApprove":"*Your review must be approved by the moderator","notValidField":"*This field is required or not valid","captchaValidationFailed":"*Captcha validation failed"},"recaptchaConfig":{"enable":false,"site_key":"","secret_key":""}}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/jet-reviews/assets/js/jet-reviews-frontend.js?ver=2.2.4' id='jet-reviews-frontend-js'></script> <script type='text/javascript' id='jet-tabs-frontend-js-extra'> /* <![CDATA[ */ var JetTabsSettings = {"ajaxurl":"https:\/\/betterpro.app\/wp-admin\/admin-ajax.php","isMobile":"false","templateApiUrl":"https:\/\/betterpro.app\/wp-json\/jet-tabs-api\/v1\/elementor-template","devMode":"false"}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/jet-tabs/assets/js/jet-tabs-frontend.min.js?ver=2.1.13' id='jet-tabs-frontend-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor/assets/js/preloaded-modules.min.js?ver=3.5.3' id='preloaded-modules-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/elementor-pro/assets/lib/sticky/jquery.sticky.min.js?ver=3.3.8' id='e-sticky-js'></script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/underscore.min.js?ver=1.13.1' id='underscore-js'></script> <script type='text/javascript' id='wp-util-js-extra'> /* <![CDATA[ */ var _wpUtilSettings = {"ajax":{"url":"\/wp-admin\/admin-ajax.php"}}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-includes/js/wp-util.min.js?ver=5.8.3' id='wp-util-js'></script> <script type='text/javascript' id='wpforms-elementor-js-extra'> /* <![CDATA[ */ var wpformsElementorVars = {"captcha_provider":"recaptcha","recaptcha_type":"v2"}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/wpforms/assets/js/integrations/elementor/frontend.min.js?ver=1.6.7.1' id='wpforms-elementor-js'></script> <script type='text/javascript' id='jet-engine-frontend-js-extra'> /* <![CDATA[ */ var JetEngineSettings = {"ajaxurl":"https:\/\/betterpro.app\/wp-admin\/admin-ajax.php","mapPopupTimeout":"400"}; /* ]]> */ </script> <script type='text/javascript' src='https://betterpro.app/wp-content/plugins/jet-engine/assets/js/frontend.js?ver=2.9.0' id='jet-engine-frontend-js'></script> </body> </html>