Looking for SeoTools 6.0 beta testers! (updated 2016-11-03)

#Hello friends of SeoTools!

I'm working on 5.2 and will release new features for beta testing in this thread:

Get the latest beta

##5.2.1 (uploaded on 2016-02-24)

  • New Searchmetrics connector (Let me know if we're missing any "must have" endpoints. I've implemented the ones that I think is the most useful.)
  • New function: PixelWidth(string text, string fontFamily, double fontSize, bool bold, bool italics)
  • New String generator tool. Located under Strings. Very useful if you're a Razor ninja.
  • Sistrix: Added select country to "Domain PageRank" and "Domain age". (Set this to you country if you get the error "Permission denied.")
  • Google Analytics:View for listing all profiles.

##5.2.2 (uploaded on 2016-03-07)

  • Google Analytics: New UI for metrics, dimensions, filters and sorting.
  • New function: IpCClass(url)
  • SEMrush: Added display date parameter for "Domain organic search results".
  • New function: KeywordDensity(url, noWords, minWordLenght, minOccurrences)

##5.2.3 (uploaded on 2016-03-23)

  • MAJOR UPDATE: Most functions incl. Connectors are now asynchronous meaning that they can be stopped and can run in parallell (if the external data source permits it) and won't make it seem like Excel crashes.
  • All "WhoIs" functions now requires a Pro subscription. (Working on a large set of TLD regexps for final release)
  • Fixed issue with SEOlytics ApiKey.
  • Added option to XPathOnUrl to get html output =Dump(XPathOnUrl("https://seotoolsforexcel.com";"//a";;;"html"))
  • Built a new cache that should be more robust. Hopefully no more OutOfMemoryExceptions.
  • RegexpReplace and RegexpIsMatch now accepts an empty input. (Discussion)
  • New function: Slice({11,12,13;21,22,23;31;32;33},0,0,-1,-1) => {11,12;21,22}. Used for slicing out parts of arrays, like "skip the first row in an array". (Discussion)

##5.2.5 (uploaded on 2016-09-17)

  • Fixed a bunch of issues with the async functions and the cache is rebuilt to offload on disc (is removed when you close Excel)
  • Updated UI for managing errors.
  • Loads of TLD WhoIs settings. We know parse the following TLDs: ac, ae, ag, am, as, at, au, be, bg, biz, br, by, ca, cc, ch, cl, cn, co, com, coop, cr, cx, cz, de, dk, ee, fi, fm, fr, gov, hk, hr, hu, id, ie, il, in, info, ir, is, it, jp, kr, kz, li, lt, lu, lv, ma, mk, mn, mo, ms, mx, na, name, net, nl, no, nu, nz, org, pe, pl, pt, pw, ro, ru, sa, se, sg, si, sk, st, tc, th, tk, tn, to, tr, tv, tw, ua, uk, us, uy, uz, ve, ws
  • All "WhoIs" and "Http" functions now requires a Pro subscription.
  • New function: CsQuery.
  • Fixed issue with JsonPathOnUrl not being able to parse arrays.
  • Adwords is updated and working again.
  • Fixed issues with GoogleResults, GoogleIndex and GoogleLinks connectors when result was empty (returned 16 instead of #NULL!).
  • Updates to Instagram connector.
  • Removed the GooglePageRank function as it has been discontinued by Google.
  • Fixed issue with Microsoft Translate.
  • Fixed broken AWQL in Google Adwords integration.
  • Configurable HTTP timeout in global HttpSettings. Default is 120sec.
  • Removed SEOlytics as they have merged with Sistrix.
  • Added support for TLS connections.
  • Breaking change: Rebuilt the Facebook connector as the previous API has been deprecated by Facebook. Now requires an AccessToken and sepparate connectors for urls and pages.
  • Fixed issue with Majestic keywords.
  • Fixed problem with W3CValidate.

##5.2.5 (uploaded on 2016-10-16)

  • Bugfixes
  • Added a Debugger tool (shown in debug mode) for Connector creators.
  • Updated Metrics and Dimensions in Google Analytics.
  • Had to retire connector "DeliciousShares" as data is not longer available.
  • New SeoTools associate Victor (know as @diskborste in the community) is our new Connector developer. He's been busy with:
  • New Flickr Connector
  • New Gavagai Connector
  • Updated Connectors: Twitter, Youtube, Sistrix, Searchmetrics

##6.0.0 (uploaded on 2016-11-03)

Decided this release is going to so large it deserves a major revision number :smile:

  • Bugfixes
  • Removed the ad on startup for free users
  • Victor has been busy:
  • New AccuRanker Connector
  • New FullContact Connector
  • New Pipedrive Connector
  • New Tumblr Connector
  • New Serpstat Connector
  • Updated Facebook Connector
  • Moved the cookbook folder to Github. Please submit your templates!

Stay tuned - We are nearly there for a final release! (It's the async stuff that's taking so long to perfect)


What will be the new Searchmetrics connector?

@Wapcity Here's a screenshot:

Thank you for sharing, This really coincides with what we use brightedge for. Its nice to see a culmination of several necessary tactics being implemented into SEO tools. If you need any beta testers, let me know!

Love the new Searchmetrics connector. Fantastic work Niels.

I'm missing three functions, I would like to see implemented:

Asynchronous connectors also sound like a major upgrade! Looking forward to test it.

1 Like

I get the following errors, when I try to install the latest beta:

Initialization [Warning] Assembly EXCELDNA.REGISTRATION could not be loaded from resources.
Initialization [Error] DnaLibrary AutoOpen Error : TargetInvocationException - Destinationen for en aktivering udløste en undtagelse.
Initialization [Warning] ResolvePath: Could not find SeoTools.config.debug.xml from DnaDirectory C:\Program Files (x86)\SeoTools for Excel
Initialization [Warning] ResolvePath: Could not find SeoTools.config.debug.xml from DnaDirectory C:\Program Files (x86)\SeoTools for Excel
Initialization [Warning] ResolvePath: Could not find SeoTools.config.debug.xml from DnaDirectory C:\Program Files (x86)\SeoTools for Excel

Any suggestions?

I'm getting those errors as well when using the installer. I was able to install the 64 bit version manually though. But after using it for a few minutes I start getting more similar error messages.

Thansk, I've forgotten to include a library in the build. Will post a new one today.

Initialization [Warning] Assembly EXCELDNA.REGISTRATION could not be loaded from resources.
Initialization [Error] DnaLibrary AutoOpen Error : TargetInvocationException - Se produjo una excepción en el destino de la invocación.

I've uploaded a new build to fix reported issues in build 5.2.3. Async functions are quite a major overhaul of SeoTools so I expect there to be a few bugs. Please help me find them all.

The installer is working fine for me now on Win 10 64bit, w/ Office 2013. No errors so far after installation.

I tried out the new Slice function (thanks btw!), and while it appears to be working, I'm getting an error message before the results display. Unlike the example you provided, I'm also wrapping the formula with the Dump function.

=Dump(Slice(XPathOnUrl(B2,"//div[contains(@class, 'brs_col')]/p[contains(@class, '_e4b')]"),1,0))

So I was just doing a test to scrape the "Searches related to..." at the bottom of the page.

But then the results appear correct.

Was the new Slice function meant to be used on it's own in place of the Dump function when trying to return all the values of an array? When I tried using Slice and Xpathonurl alone as in your example, it only returned one result.

Ah good catch. Asynchronous functions first return #GETTING_DATA and then the result when finished. So chained formulas need to handle this. In some functions like Dump and Resize I'm catching this for you. Will add the same check to Slice.

Adwords not working. Am getting the error below:

See the end of this message for details on invoking 

just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.FileNotFoundException: Could not load file or assembly 'Google.Ads.Common, Version=, Culture=neutral, PublicKeyToken=52807268f2b614dc' or one of its dependencies. The system cannot find the file specified.
File name: 'Google.Ads.Common, Version=, Culture=neutral, PublicKeyToken=52807268f2b614dc'
at SeoTools.GoogleAdwords.AdwordsManager..ctor()
at SeoTools.GoogleAdwords.AdwordsManager.get_Instance()
at SeoTools.GoogleAdwords.AdwordsWizard.ServiceLogin()
at SeoTools.UI.TaskPaneWizard.AbstractTaskPaneWizard.Login()
at SeoTools.UI.TaskPaneWizard.AbstractTaskPaneWizard.btnLogin_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Does this work for you in the public version?

Bug in Resize()

I prefer to use Resize() rather than Dump(), because it's cleaner (no comments). However, sometimes I'm forced to use Dump() because Resize() either bombs Excel or it goes into an endless loop. I'm using SeoTools 5.2.4beta on 64-bit Excel 2016.

Here's an example that should return 4 URLs, but it loops continuously, when Dump() works just fine:

=Resize( XPathOnUrl("https://roadloans.com/sitemap.xml?yyyy=2016&mm=08&dd=02", "//loc") )

This works fine with SeoTools 5.1.3 (on both 32-bit Excel 2016 and 64-bit Excel 2013).

Ok thanks will look into this.

Not sure if Resize will work with async functions.

I think we solved it! Will release a new beta soon.