4

Is there a way to stitch (paged) web pages together?

For example, I want to print out this thread, but it is divided into 10 sections; How can I join them together to make printing easier and more efficient?

I would prefer a quick web-based solution, but simple off-line tools would also be acceptable (I have downloaded each section and manually merged the files into one html file, before...)

Edit: I forgot to mention I use Opera on Vista Enterprise

2

5 Answers 5

4

If you don't want to bother with addons, you can try and see if there is a version of the site that will dump out everything for a print version.

For most forums, there is often a lofi version which will remove the paging and display the entire thread on the one page. The trick is to find the page/directory for that particular forum software.

In your case, HealthBoards is running on vBulletin, and the lofi path to that is /archive/. This should be the new path after the directory to the boards themselves and will look like this:

http://www.healthboards.com/boards/archive/index.php

From there you can navigate back to the thread and see all the posts on a single page.

The quick grab version of a vBulletin thread:

The original thread is here:

http://www.healthboards.com/boards/showthread.php?t=296667

Quick way is to grab that value just after the t= (and before the next ampersand (&) in the URL) and replace as necessary in the below:

http://www.healthboards.com/boards/archive/index.php/t-296667.html

6
  • Hey, that suits my needs very well for this case. I thought the "printable" version was the best lofi version available. If no one comes up with a generalized solution, I will accept this answer.
    – Leftium
    Aug 20, 2009 at 5:57
  • A generalised solution being better, but thought that this method might help in similar cases.
    – random
    Aug 20, 2009 at 6:02
  • Now that is slick, echo.
    – hyperslug
    Aug 20, 2009 at 6:29
  • Answer accepted, although I had problems printing this version out! (Need to select all, print selection in IE)
    – Leftium
    Aug 25, 2009 at 16:05
  • What problem did you have?
    – random
    Aug 25, 2009 at 16:12
4

If you are using Firefox I suggest the AutoPager extension. It will go through all the pages and combine them into a single large page, then you can just print out the whole page its created for you.

For most sites it can automatically join the separate pages into a single page, but for some you have to tell it where the links are.

2

this solution works for unix, but i'm sure you can find equivalents for vista.

first, use wget to download the files:

wget -nd -k -p "http://www.healthboards.com/boards/printthread.php?t=296667&pp=20&page="{1,2,3,4,5,6,7,8,9,10} --wait 5

then use cat to concatenate them. i don't know the windows equivalent of this command, but there surely must be one:

cat "printthread.php?t=296667&pp=20&page="* > hello.html

the file hello.html will be one big file with all the thread pages. you might get annoyed by the fact that all the pages have that vbulletin logo though!

edit: here is wget for windows. of course, you could use some other download manager

and here is how to concatenate files on windows.

1

There are commercial apps out there if you don't mind spending some money. I've used ClickBook from BlueSquirrel which, among other things, can stich together multiple printouts.

1

You can do it using Microsoft Excel (if you have one :) ) It has the functionality to make web queries (Menu: Data > Import External Data > Web Query)

I recorded VB macros and made some changes, so you can add addresses to the first Sheet, like: (each address is in next cell)

http://www.healthboards.com/boards/printthread.php?t=296667&pp=20&page=1 ............................................./boards/printthread.php?t=296667&pp=20&page=2 ............................................./boards/printthread.php?t=296667&pp=20&page=3

and then run this macros and get result. It helped me.

macros:

Sub Macro2()
'
' Macro2 Macro

'
Dim url As String
Dim count As Integer

Dim resaultSheet As String
Dim adressesSheet As String

  adressesSheet = ActiveSheet.Name
  resaultSheet = Sheets.Add().Name

Sheets(adressesSheet).Select
Sheets(adressesSheet).Cells(1, 1).Select

ActiveCell.SpecialCells(xlLastCell).Select

count = ActiveCell.Row

Sheets(resaultSheet).Select
Sheets(resaultSheet).Cells(1, 1).Select

For i = 1 To count

 url = "URL;" + Sheets(adressesSheet).Cells(i, 1)


 With ActiveSheet.QueryTables.Add(Connection:= _
        url, Destination _
        :=ActiveCell)
        .Name = "name"
         .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = False
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlEntirePage
        .WebFormatting = xlWebFormattingAll
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = True
        .WebDisableRedirections = True
        .Refresh BackgroundQuery:=False
    End With

       ActiveCell.SpecialCells(xlLastCell).Select
        Cells(ActiveCell.Row + 1, 1).Select

Next i


End Sub

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .