Any way to load more than 50 search results per query?


(Drew) #1

If I search for user:sam and click on “show more”, the full search page only shows 50 results, displaying “No more results found.” afterwards. He’s posted a total of 9716 times (including topics), so 50 is nowhere near close to the total amount. Is there any way to load more posts? The particular reason I’m trying to load more than 50 posts on such a broad query is I want to know how many times a particular user has said a given word and how many times it’s been used over the lifetime over the forum.


(Jay Pfaffman) #2

No. You can’t get more than 50:

If you have access to the data explorer plugin you can do a search like this to get all posts with the word:

SELECT p.id as post_id, user_id, topic_id from posts p
JOIN users u on u.id=user_id
where p.raw like '%WORD%'

and this to get them just for the user:

SELECT p.id as post_id, user_id, topic_id from posts p
JOIN users u on u.id=user_id
where p.raw like '%WORD%'
AND u.username='USERNAME'

(Drew) #3

I’m not an admin on the site I’m trying to find the data for ): So far I’ve been having to stick to sorting by latest and gradually incrementing before:x by the #days the last post in the results was posted ago. Not fun, but I can’t have the world I guess.


(Jay Pfaffman) #4

In that case, you might automate your search with wget or curl.


(Drew) #5

I have no experience with web-based programming, so unfortunately that’s out of my reach right now.


(Jay Pfaffman) #6

Depending on how many queries you’re doing, it could be worth spending a few minutes to learn one of these tools. Basically, all you do is pass them the URL (the same one you have in your browser) and either of them will pull down the page and let you stick it in a file.

This curl command will get each of the past 10 days of times that I used the word “badge” here on meta:

curl https://meta.discourse.org/search?q=user:pfaffman+badge+days:[1-10] -o badge_#1.html

and put them in files named badge_#.html (where # gets replaced with the number of days in the query).

If you’re talking about hundreds of queries it might be worth giving that a shot.

OS X includes curl. For Windows, the easiest way is to install Git, or see this stack overflow answer.

Good luck with your sleuthing!


(Jeff Atwood) #7

Search is now no longer limited to 50 results thanks to @dmacjam !


(Jeff Atwood) #8