Question: I´m using ngTagsInput with auto-complete to filter my TagList:

```
<tags-input ng-model="tags" placeholder="neues Tag">
    <auto-complete source="loadTags($query)"></auto-complete>
</tags-input>

```

And the following js:

```
var app = angular.module('ipbx', ['ngTagsInput']);
var query;

app.controller('MainCtrl', function($scope, $http) {

  $scope.tags = globaltags;

  $scope.loadTags = function(val) {
    return $http.get(tagurl+"&query="+val);
  };

});

```

When I have a least 3 characters in the input, the tagurl is fired, but `$query` keeps `undefined`.

Any Idea?

Answer: 
Use beautiful soups - .strings method.

```
for string in soup.stripped_strings:
print(repr(string))

```

from the docs:

> 
> If there’s more than one thing inside a tag, you can still look at
>  just the strings. Use the .strings generator:
> 
> 
> 

or 

> 
> These strings tend to have a lot of extra whitespace, which you can
>  remove by using the .stripped\_strings generator instead:
> 
> 
>
This example from the [documentation](http://www.crummy.com/software/BeautifulSoup/bs3/documentation.html#Generators) gives a very nice one liner. 

```
''.join(BeautifulSoup(source).findAll(text=True))

```