I'm trying to find all href links on a webpage and replace the link with my own proxy link.
For example
<a href="http://www.google.com">Google</a>
Needs to be
<a href="http://www.example.com/?loadpage=http://www.google.com">Google</a>
I'm trying to find all href links on a webpage and replace the link with my own proxy link.
For example
<a href="http://www.google.com">Google</a>
Needs to be
<a href="http://www.example.com/?loadpage=http://www.google.com">Google</a>
Just another option if you would like to have the links replaced with by jQuery you could also do the following:
However a more secure way is doing it in php offcourse.
Use PHP's
DomDocument
to parse the pageCheck it out here: http://codepad.org/9enqx3Rv
If you don't have the HTML as a string, you may use cUrl (docs) to grab the HTML, or you can use the
loadHTMLFile
method ofDomDocument
Documentation
DomDocument
- http://php.net/manual/en/class.domdocument.phpDomElement
- http://www.php.net/manual/en/class.domelement.phpDomElement::getAttribute
- http://www.php.net/manual/en/domelement.getattribute.phpDOMElement::setAttribute
- http://www.php.net/manual/en/domelement.setattribute.phpurlencode
- http://php.net/manual/en/function.urlencode.phpDomDocument::loadHTMLFile
- http://www.php.net/manual/en/domdocument.loadhtmlfile.phpSimplest way I can think to do this:
But that might have some problems with urls containing ? or &. Or if the text (not code) of the document contains href="